(0) Obligation:

JBC Problem based on JBC Program:
No human-readable program information known.

Manifest-Version: 1.0 Created-By: 1.6.0_20 (Sun Microsystems Inc.) Main-Class: FlattenRTA

(1) JBC2FIG (SOUND transformation)

Constructed FIGraph.

(2) Obligation:

FIGraph based on JBC Program:
Graph of 871 nodes with 2 SCCs.

(3) FIGtoITRSProof (SOUND transformation)

Transformed FIGraph to ITRS rules

(4) Complex Obligation (AND)

(5) Obligation:

ITRS problem:

The following function symbols are pre-defined:
!=~Neq: (Integer, Integer) -> Boolean
*~Mul: (Integer, Integer) -> Integer
>=~Ge: (Integer, Integer) -> Boolean
-1~UnaryMinus: (Integer) -> Integer
|~Bwor: (Integer, Integer) -> Integer
/~Div: (Integer, Integer) -> Integer
=~Eq: (Integer, Integer) -> Boolean
~Bwxor: (Integer, Integer) -> Integer
||~Lor: (Boolean, Boolean) -> Boolean
!~Lnot: (Boolean) -> Boolean
<~Lt: (Integer, Integer) -> Boolean
-~Sub: (Integer, Integer) -> Integer
<=~Le: (Integer, Integer) -> Boolean
>~Gt: (Integer, Integer) -> Boolean
~~Bwnot: (Integer) -> Integer
%~Mod: (Integer, Integer) -> Integer
&~Bwand: (Integer, Integer) -> Integer
+~Add: (Integer, Integer) -> Integer
&&~Land: (Boolean, Boolean) -> Boolean

The TRS R consists of the following rules:
Load4995(o6162, o6162, java.lang.Object(TreeList(o6296, java.lang.Object(Tree(o7227, o7228, i2993))))) → JMP5452(o6162, o6162, java.lang.Object(TreeList(java.lang.Object(TreeList(o6296, o7228)), o7227)))
Load4995(java.lang.Object(TreeList(o6300, java.lang.Object(Tree(o7233, o7234, i2994)))), java.lang.Object(TreeList(o6300, java.lang.Object(Tree(o7233, o7234, i2994)))), java.lang.Object(TreeList(o6300, java.lang.Object(Tree(o7233, o7234, i2994))))) → JMP5452(java.lang.Object(TreeList(o6300, o7234)), java.lang.Object(TreeList(o6300, o7234)), java.lang.Object(TreeList(java.lang.Object(TreeList(o6300, o7234)), o7233)))
Load4995(java.lang.Object(TreeList(o6300, NULL)), java.lang.Object(TreeList(o6300, NULL)), java.lang.Object(TreeList(o6300, NULL))) → JMP5452(java.lang.Object(TreeList(o6300, NULL)), java.lang.Object(TreeList(o6300, NULL)), o6300)
JMP5452(o6162, o6162, o6296) → Load4995(o6162, o6162, o6296)
Load4995(o6162, o6162, java.lang.Object(TreeList(o6296, NULL))) → Load4995(o6162, o6162, o6296)
The set Q consists of the following terms:
Load4995(x0, x0, java.lang.Object(TreeList(x1, java.lang.Object(Tree(x2, x3, x4)))))
JMP5452(x0, x0, x1)
Load4995(x0, x0, java.lang.Object(TreeList(x1, NULL)))

(6) DuplicateArgsRemoverProof (EQUIVALENT transformation)

Some arguments are removed because they only appear as duplicates.
We removed arguments according to the following replacements:

Load4995(x1, x2, x3) → Load4995(x2, x3)
JMP5452(x1, x2, x3) → JMP5452(x2, x3)

(7) Obligation:

ITRS problem:

The following function symbols are pre-defined:
!=~Neq: (Integer, Integer) -> Boolean
*~Mul: (Integer, Integer) -> Integer
>=~Ge: (Integer, Integer) -> Boolean
-1~UnaryMinus: (Integer) -> Integer
|~Bwor: (Integer, Integer) -> Integer
/~Div: (Integer, Integer) -> Integer
=~Eq: (Integer, Integer) -> Boolean
~Bwxor: (Integer, Integer) -> Integer
||~Lor: (Boolean, Boolean) -> Boolean
!~Lnot: (Boolean) -> Boolean
<~Lt: (Integer, Integer) -> Boolean
-~Sub: (Integer, Integer) -> Integer
<=~Le: (Integer, Integer) -> Boolean
>~Gt: (Integer, Integer) -> Boolean
~~Bwnot: (Integer) -> Integer
%~Mod: (Integer, Integer) -> Integer
&~Bwand: (Integer, Integer) -> Integer
+~Add: (Integer, Integer) -> Integer
&&~Land: (Boolean, Boolean) -> Boolean

The TRS R consists of the following rules:
Load4995(o6162, java.lang.Object(TreeList(o6296, java.lang.Object(Tree(o7227, o7228, i2993))))) → JMP5452(o6162, java.lang.Object(TreeList(java.lang.Object(TreeList(o6296, o7228)), o7227)))
Load4995(java.lang.Object(TreeList(o6300, java.lang.Object(Tree(o7233, o7234, i2994)))), java.lang.Object(TreeList(o6300, java.lang.Object(Tree(o7233, o7234, i2994))))) → JMP5452(java.lang.Object(TreeList(o6300, o7234)), java.lang.Object(TreeList(java.lang.Object(TreeList(o6300, o7234)), o7233)))
Load4995(java.lang.Object(TreeList(o6300, NULL)), java.lang.Object(TreeList(o6300, NULL))) → JMP5452(java.lang.Object(TreeList(o6300, NULL)), o6300)
JMP5452(o6162, o6296) → Load4995(o6162, o6296)
Load4995(o6162, java.lang.Object(TreeList(o6296, NULL))) → Load4995(o6162, o6296)
The set Q consists of the following terms:
Load4995(x0, java.lang.Object(TreeList(x1, java.lang.Object(Tree(x2, x3, x4)))))
JMP5452(x0, x1)
Load4995(x0, java.lang.Object(TreeList(x1, NULL)))

(8) ITRStoQTRSProof (EQUIVALENT transformation)

Represented integers and predefined function symbols by Terms

(9) Obligation:

Q restricted rewrite system:
The TRS R consists of the following rules:

Load4995(o6162, java.lang.Object(TreeList(o6296, java.lang.Object(Tree(o7227, o7228, i2993))))) → JMP5452(o6162, java.lang.Object(TreeList(java.lang.Object(TreeList(o6296, o7228)), o7227)))
Load4995(java.lang.Object(TreeList(o6300, java.lang.Object(Tree(o7233, o7234, i2994)))), java.lang.Object(TreeList(o6300, java.lang.Object(Tree(o7233, o7234, i2994))))) → JMP5452(java.lang.Object(TreeList(o6300, o7234)), java.lang.Object(TreeList(java.lang.Object(TreeList(o6300, o7234)), o7233)))
Load4995(java.lang.Object(TreeList(o6300, NULL)), java.lang.Object(TreeList(o6300, NULL))) → JMP5452(java.lang.Object(TreeList(o6300, NULL)), o6300)
JMP5452(o6162, o6296) → Load4995(o6162, o6296)
Load4995(o6162, java.lang.Object(TreeList(o6296, NULL))) → Load4995(o6162, o6296)

The set Q consists of the following terms:

Load4995(x0, java.lang.Object(TreeList(x1, java.lang.Object(Tree(x2, x3, x4)))))
JMP5452(x0, x1)
Load4995(x0, java.lang.Object(TreeList(x1, NULL)))

(10) QTRSRRRProof (EQUIVALENT transformation)

Used ordering:
Polynomial interpretation [POLO]:

POL(JMP5452(x1, x2)) = 1 + x1 + x2   
POL(Load4995(x1, x2)) = x1 + x2   
POL(NULL) = 2   
POL(Tree(x1, x2, x3)) = 2 + x1 + x2 + x3   
POL(TreeList(x1, x2)) = x1 + x2   
POL(java.lang.Object(x1)) = x1   
With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly:

Load4995(o6162, java.lang.Object(TreeList(o6296, java.lang.Object(Tree(o7227, o7228, i2993))))) → JMP5452(o6162, java.lang.Object(TreeList(java.lang.Object(TreeList(o6296, o7228)), o7227)))
Load4995(java.lang.Object(TreeList(o6300, java.lang.Object(Tree(o7233, o7234, i2994)))), java.lang.Object(TreeList(o6300, java.lang.Object(Tree(o7233, o7234, i2994))))) → JMP5452(java.lang.Object(TreeList(o6300, o7234)), java.lang.Object(TreeList(java.lang.Object(TreeList(o6300, o7234)), o7233)))
Load4995(java.lang.Object(TreeList(o6300, NULL)), java.lang.Object(TreeList(o6300, NULL))) → JMP5452(java.lang.Object(TreeList(o6300, NULL)), o6300)
JMP5452(o6162, o6296) → Load4995(o6162, o6296)
Load4995(o6162, java.lang.Object(TreeList(o6296, NULL))) → Load4995(o6162, o6296)


(11) Obligation:

Q restricted rewrite system:
R is empty.
The set Q consists of the following terms:

Load4995(x0, java.lang.Object(TreeList(x1, java.lang.Object(Tree(x2, x3, x4)))))
JMP5452(x0, x1)
Load4995(x0, java.lang.Object(TreeList(x1, NULL)))

(12) RisEmptyProof (EQUIVALENT transformation)

The TRS R is empty. Hence, termination is trivially proven.

(13) TRUE

(14) Obligation:

ITRS problem:

The following function symbols are pre-defined:
!=~Neq: (Integer, Integer) -> Boolean
*~Mul: (Integer, Integer) -> Integer
>=~Ge: (Integer, Integer) -> Boolean
-1~UnaryMinus: (Integer) -> Integer
|~Bwor: (Integer, Integer) -> Integer
/~Div: (Integer, Integer) -> Integer
=~Eq: (Integer, Integer) -> Boolean
~Bwxor: (Integer, Integer) -> Integer
||~Lor: (Boolean, Boolean) -> Boolean
!~Lnot: (Boolean) -> Boolean
<~Lt: (Integer, Integer) -> Boolean
-~Sub: (Integer, Integer) -> Integer
<=~Le: (Integer, Integer) -> Boolean
>~Gt: (Integer, Integer) -> Boolean
~~Bwnot: (Integer) -> Integer
%~Mod: (Integer, Integer) -> Integer
&~Bwand: (Integer, Integer) -> Integer
+~Add: (Integer, Integer) -> Integer
&&~Land: (Boolean, Boolean) -> Boolean

The TRS R consists of the following rules:
Load715(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → Load715ARR1(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(0, i86, i88, a823)))
Load715ARR1(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(0, i86, i88, a823))) → Cond_Load715ARR1(i56 > 0 && i56 < i2 && i58 > 0 && i56 + 1 > 0, java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(0, i86, i88, a823)))
Cond_Load715ARR1(TRUE, java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(0, i86, i88, a823))) → Load715(java.lang.Object(ARRAY(i2, a694data)), i56 + 1, i58 + -1)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, 0, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18021Field0, o18021Field1, o18021Field2))) → Load715(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58 + -1)
Load715(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → Load715ARR2(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i290, i289, i291, a1552)), java.lang.Object(java.lang.String(i109, i86, i88, a823)))
Load715ARR2(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i290, i289, i291, a1552)), java.lang.Object(java.lang.String(i109, i86, i88, a823))) → Cond_Load715ARR2(i56 + 1 > 0 && i56 + 1 < i2 && i109 > 0 && i56 > 0 && i56 < i2 && i58 > 0 && i56 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i290, i289, i291, a1552)), java.lang.Object(java.lang.String(i109, i86, i88, a823)))
Cond_Load715ARR2(TRUE, java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i290, i289, i291, a1552)), java.lang.Object(java.lang.String(i109, i86, i88, a823))) → Load13603(java.lang.Object(ARRAY(i2, a694data)), i56 + 1 + 1, i58, i109, java.lang.Object(Tree(NULL, NULL, i290)), java.lang.Object(Tree(NULL, NULL, i290)))
Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o19002Field0, o19002Field1, o19002Field2))) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630 + -1, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o19002Field0, o19002Field1, o19002Field2)))
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, java.lang.Object(Tree(o19002Field0, o19002Field1, o19002Field2)), i8141))) → Load13603ARR3(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, java.lang.Object(Tree(o19002Field0, o19002Field1, o19002Field2)), i8141)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737)))
Load13603ARR3(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, java.lang.Object(Tree(o19002Field0, o19002Field1, o19002Field2)), i8141)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737))) → Cond_Load13603ARR3(i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, java.lang.Object(Tree(o19002Field0, o19002Field1, o19002Field2)), i8141)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737)))
Cond_Load13603ARR3(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, java.lang.Object(Tree(o19002Field0, o19002Field1, o19002Field2)), i8141)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737))) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630 + -1, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o19002Field0, o19002Field1, o19002Field2)))
Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18019, o18020, i290))) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630 + -1, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18019, o18020, i290)))
JMP18797(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18019, o18020, i290))) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630 + -1, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18019, o18020, i290)))
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, NULL, i8141))) → Load13603ARR4(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, NULL, i8141)), java.lang.Object(java.lang.String(i9717, i9716, i9718, a24457)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737)))
Load13603ARR4(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, java.lang.Object(Tree(NULL, NULL, i9717)), i8141)), java.lang.Object(java.lang.String(i9717, i9716, i9718, a24457)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737))) → Cond_Load13603ARR4(i7628 + 1 > 0 && i7628 + 1 < i2 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, java.lang.Object(Tree(NULL, NULL, i9717)), i8141)), java.lang.Object(java.lang.String(i9717, i9716, i9718, a24457)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737)))
Cond_Load13603ARR4(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, java.lang.Object(Tree(NULL, NULL, i9717)), i8141)), java.lang.Object(java.lang.String(i9717, i9716, i9718, a24457)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737))) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630 + -1, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18019, o18020, i290)))
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290)), java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290))) → Load13603ARR5(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290)), java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737)))
Load13603ARR5(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290)), java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737))) → Cond_Load13603ARR5(i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290)), java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737)))
Cond_Load13603ARR5(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290)), java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737))) → Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290)), java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)))
JMP15126(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o19018Field0, o19018Field1, o19018Field2))) → Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o19018Field0, o19018Field1, o19018Field2)))
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(o19018Field0, o19018Field1, o19018Field2)), o18896, i8142))) → Load13603ARR6(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(o19018Field0, o19018Field1, o19018Field2)), o18896, i8142)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR6(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(o19018Field0, o19018Field1, o19018Field2)), o18896, i8142)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR6(i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(o19018Field0, o19018Field1, o19018Field2)), o18896, i8142)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR6(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(o19018Field0, o19018Field1, o19018Field2)), o18896, i8142)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o19018Field0, o19018Field1, o19018Field2)))
JMP18886(java.lang.Object(ARRAY(i2, a19203data)), i8946, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18019, o18020, i290))) → Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i8946, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18019, o18020, i290)))
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(NULL, o18896, i8142))) → Load13603ARR7(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(NULL, o18896, i8142)), java.lang.Object(java.lang.String(i9818, i9817, i9819, a24672)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR7(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9818)), o18896, i8142)), java.lang.Object(java.lang.String(i9818, i9817, i9819, a24672)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR7(i7628 + 1 > 0 && i7628 + 1 < i2 && i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9818)), o18896, i8142)), java.lang.Object(java.lang.String(i9818, i9817, i9819, a24672)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR7(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9818)), o18896, i8142)), java.lang.Object(java.lang.String(i9818, i9817, i9819, a24672)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18019, o18020, i290)))
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, NULL, i290)), java.lang.Object(Tree(o18019, NULL, i290))) → Load13603ARR8(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, NULL, i290)), java.lang.Object(Tree(o18019, NULL, i290)), java.lang.Object(java.lang.String(i9577, i9576, i9578, a24141)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737)))
Load13603ARR8(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(NULL, NULL, i9577)), i290)), java.lang.Object(Tree(o18019, java.lang.Object(Tree(NULL, NULL, i9577)), i290)), java.lang.Object(java.lang.String(i9577, i9576, i9578, a24141)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737))) → Cond_Load13603ARR8(i7628 + 1 > 0 && i7628 + 1 < i2 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(NULL, NULL, i9577)), i290)), java.lang.Object(Tree(o18019, java.lang.Object(Tree(NULL, NULL, i9577)), i290)), java.lang.Object(java.lang.String(i9577, i9576, i9578, a24141)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737)))
Cond_Load13603ARR8(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(NULL, NULL, i9577)), i290)), java.lang.Object(Tree(o18019, java.lang.Object(Tree(NULL, NULL, i9577)), i290)), java.lang.Object(java.lang.String(i9577, i9576, i9578, a24141)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737))) → JMP18797(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(NULL, NULL, i9577)), i290)), java.lang.Object(Tree(o18019, java.lang.Object(Tree(NULL, NULL, i9577)), i290)))
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290))) → Load13603ARR9(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR9(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR9(i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR9(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → JMP15126(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290)), java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)))
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(NULL, o18020, i290)), java.lang.Object(Tree(NULL, o18020, i290))) → Load13603ARR10(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(NULL, o18020, i290)), java.lang.Object(Tree(NULL, o18020, i290)), java.lang.Object(java.lang.String(i9665, i9664, i9666, a24343)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR10(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9665)), o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9665)), o18020, i290)), java.lang.Object(java.lang.String(i9665, i9664, i9666, a24343)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR10(i7628 + 1 > 0 && i7628 + 1 < i2 && i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9665)), o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9665)), o18020, i290)), java.lang.Object(java.lang.String(i9665, i9664, i9666, a24343)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR10(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9665)), o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9665)), o18020, i290)), java.lang.Object(java.lang.String(i9665, i9664, i9666, a24343)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → JMP18886(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9665)), o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9665)), o18020, i290)))
The set Q consists of the following terms:
Load715(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR1(java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(0, x4, x5, x6)))
Cond_Load715ARR1(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(0, x4, x5, x6)))
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, 0, java.lang.Object(Tree(x4, x5, x6)), java.lang.Object(Tree(x7, x8, x9)))
Load715ARR2(java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)), java.lang.Object(java.lang.String(x8, x9, x10, x11)))
Cond_Load715ARR2(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)), java.lang.Object(java.lang.String(x8, x9, x10, x11)))
Inc15077(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, x9, x10)))
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, java.lang.Object(Tree(x9, x10, x11)), x12)))
Load13603ARR3(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, java.lang.Object(Tree(x9, x10, x11)), x12)), java.lang.Object(java.lang.String(0, x13, x14, x15)))
Cond_Load13603ARR3(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, java.lang.Object(Tree(x9, x10, x11)), x12)), java.lang.Object(java.lang.String(0, x13, x14, x15)))
Inc18978(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x5, x6, x7)))
JMP18797(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x5, x6, x7)))
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, NULL, x9)))
Load13603ARR4(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, java.lang.Object(Tree(NULL, NULL, x9)), x10)), java.lang.Object(java.lang.String(x9, x11, x12, x13)), java.lang.Object(java.lang.String(0, x14, x15, x16)))
Cond_Load13603ARR4(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, java.lang.Object(Tree(NULL, NULL, x9)), x10)), java.lang.Object(java.lang.String(x9, x11, x12, x13)), java.lang.Object(java.lang.String(0, x14, x15, x16)))
Load13603ARR5(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, java.lang.Object(Tree(x6, x7, x8)), x9)), java.lang.Object(Tree(x5, java.lang.Object(Tree(x6, x7, x8)), x9)), java.lang.Object(java.lang.String(0, x10, x11, x12)))
Cond_Load13603ARR5(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, java.lang.Object(Tree(x6, x7, x8)), x9)), java.lang.Object(Tree(x5, java.lang.Object(Tree(x6, x7, x8)), x9)), java.lang.Object(java.lang.String(0, x10, x11, x12)))
JMP15126(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, x9, x10)))
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(java.lang.Object(Tree(x8, x9, x10)), x11, x12)))
Load13603ARR6(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(java.lang.Object(Tree(x8, x9, x10)), x11, x12)), java.lang.Object(java.lang.String(x13, x14, x15, x16)))
Cond_Load13603ARR6(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(java.lang.Object(Tree(x8, x9, x10)), x11, x12)), java.lang.Object(java.lang.String(x13, x14, x15, x16)))
JMP18886(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x5, x6, x7)))
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(NULL, x8, x9)))
Load13603ARR7(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, x8)), x9, x10)), java.lang.Object(java.lang.String(x8, x11, x12, x13)), java.lang.Object(java.lang.String(x14, x15, x16, x17)))
Cond_Load13603ARR7(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, x8)), x9, x10)), java.lang.Object(java.lang.String(x8, x11, x12, x13)), java.lang.Object(java.lang.String(x14, x15, x16, x17)))
Load13603ARR8(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, java.lang.Object(Tree(NULL, NULL, x6)), x7)), java.lang.Object(Tree(x5, java.lang.Object(Tree(NULL, NULL, x6)), x7)), java.lang.Object(java.lang.String(x6, x8, x9, x10)), java.lang.Object(java.lang.String(0, x11, x12, x13)))
Cond_Load13603ARR8(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, java.lang.Object(Tree(NULL, NULL, x6)), x7)), java.lang.Object(Tree(x5, java.lang.Object(Tree(NULL, NULL, x6)), x7)), java.lang.Object(java.lang.String(x6, x8, x9, x10)), java.lang.Object(java.lang.String(0, x11, x12, x13)))
Load13603ARR9(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(java.lang.Object(Tree(x5, x6, x7)), x8, x9)), java.lang.Object(Tree(java.lang.Object(Tree(x5, x6, x7)), x8, x9)), java.lang.Object(java.lang.String(x10, x11, x12, x13)))
Cond_Load13603ARR9(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(java.lang.Object(Tree(x5, x6, x7)), x8, x9)), java.lang.Object(Tree(java.lang.Object(Tree(x5, x6, x7)), x8, x9)), java.lang.Object(java.lang.String(x10, x11, x12, x13)))
Load13603ARR10(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, x5)), x6, x7)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, x5)), x6, x7)), java.lang.Object(java.lang.String(x5, x8, x9, x10)), java.lang.Object(java.lang.String(x11, x12, x13, x14)))
Cond_Load13603ARR10(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, x5)), x6, x7)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, x5)), x6, x7)), java.lang.Object(java.lang.String(x5, x8, x9, x10)), java.lang.Object(java.lang.String(x11, x12, x13, x14)))

(15) DuplicateArgsRemoverProof (EQUIVALENT transformation)

Some arguments are removed because they only appear as duplicates.
We removed arguments according to the following replacements:

JMP18886(x1, x2, x3, x4, x5, x6) → JMP18886(x1, x2, x3, x4, x6)
Cond_Load13603ARR10(x1, x2, x3, x4, x5, x6, x7, x8, x9) → Cond_Load13603ARR10(x1, x2, x3, x4, x5, x7, x8, x9)
Load13603ARR10(x1, x2, x3, x4, x5, x6, x7, x8) → Load13603ARR10(x1, x2, x3, x4, x6, x7, x8)
Cond_Load13603ARR9(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_Load13603ARR9(x1, x2, x3, x4, x5, x7, x8)
Load13603ARR9(x1, x2, x3, x4, x5, x6, x7) → Load13603ARR9(x1, x2, x3, x4, x6, x7)
JMP18797(x1, x2, x3, x4, x5, x6) → JMP18797(x1, x2, x3, x4, x6)
Cond_Load13603ARR8(x1, x2, x3, x4, x5, x6, x7, x8, x9) → Cond_Load13603ARR8(x1, x2, x3, x4, x5, x7, x8, x9)
Load13603ARR8(x1, x2, x3, x4, x5, x6, x7, x8) → Load13603ARR8(x1, x2, x3, x4, x6, x7, x8)
Inc18978(x1, x2, x3, x4, x5, x6) → Inc18978(x1, x2, x3, x4, x6)
Cond_Load13603ARR5(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_Load13603ARR5(x1, x2, x3, x4, x5, x7, x8)
Load13603ARR5(x1, x2, x3, x4, x5, x6, x7) → Load13603ARR5(x1, x2, x3, x4, x6, x7)

(16) Obligation:

ITRS problem:

The following function symbols are pre-defined:
!=~Neq: (Integer, Integer) -> Boolean
*~Mul: (Integer, Integer) -> Integer
>=~Ge: (Integer, Integer) -> Boolean
-1~UnaryMinus: (Integer) -> Integer
|~Bwor: (Integer, Integer) -> Integer
/~Div: (Integer, Integer) -> Integer
=~Eq: (Integer, Integer) -> Boolean
~Bwxor: (Integer, Integer) -> Integer
||~Lor: (Boolean, Boolean) -> Boolean
!~Lnot: (Boolean) -> Boolean
<~Lt: (Integer, Integer) -> Boolean
-~Sub: (Integer, Integer) -> Integer
<=~Le: (Integer, Integer) -> Boolean
>~Gt: (Integer, Integer) -> Boolean
~~Bwnot: (Integer) -> Integer
%~Mod: (Integer, Integer) -> Integer
&~Bwand: (Integer, Integer) -> Integer
+~Add: (Integer, Integer) -> Integer
&&~Land: (Boolean, Boolean) -> Boolean

The TRS R consists of the following rules:
Load715(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → Load715ARR1(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(0, i86, i88, a823)))
Load715ARR1(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(0, i86, i88, a823))) → Cond_Load715ARR1(i56 > 0 && i56 < i2 && i58 > 0 && i56 + 1 > 0, java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(0, i86, i88, a823)))
Cond_Load715ARR1(TRUE, java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(0, i86, i88, a823))) → Load715(java.lang.Object(ARRAY(i2, a694data)), i56 + 1, i58 + -1)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, 0, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18021Field0, o18021Field1, o18021Field2))) → Load715(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58 + -1)
Load715(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → Load715ARR2(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i290, i289, i291, a1552)), java.lang.Object(java.lang.String(i109, i86, i88, a823)))
Load715ARR2(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i290, i289, i291, a1552)), java.lang.Object(java.lang.String(i109, i86, i88, a823))) → Cond_Load715ARR2(i56 + 1 > 0 && i56 + 1 < i2 && i109 > 0 && i56 > 0 && i56 < i2 && i58 > 0 && i56 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i290, i289, i291, a1552)), java.lang.Object(java.lang.String(i109, i86, i88, a823)))
Cond_Load715ARR2(TRUE, java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i290, i289, i291, a1552)), java.lang.Object(java.lang.String(i109, i86, i88, a823))) → Load13603(java.lang.Object(ARRAY(i2, a694data)), i56 + 1 + 1, i58, i109, java.lang.Object(Tree(NULL, NULL, i290)), java.lang.Object(Tree(NULL, NULL, i290)))
Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o19002Field0, o19002Field1, o19002Field2))) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630 + -1, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o19002Field0, o19002Field1, o19002Field2)))
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, java.lang.Object(Tree(o19002Field0, o19002Field1, o19002Field2)), i8141))) → Load13603ARR3(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, java.lang.Object(Tree(o19002Field0, o19002Field1, o19002Field2)), i8141)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737)))
Load13603ARR3(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, java.lang.Object(Tree(o19002Field0, o19002Field1, o19002Field2)), i8141)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737))) → Cond_Load13603ARR3(i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, java.lang.Object(Tree(o19002Field0, o19002Field1, o19002Field2)), i8141)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737)))
Cond_Load13603ARR3(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, java.lang.Object(Tree(o19002Field0, o19002Field1, o19002Field2)), i8141)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737))) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630 + -1, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o19002Field0, o19002Field1, o19002Field2)))
Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290))) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630 + -1, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18019, o18020, i290)))
JMP18797(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290))) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630 + -1, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18019, o18020, i290)))
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, NULL, i8141))) → Load13603ARR4(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, NULL, i8141)), java.lang.Object(java.lang.String(i9717, i9716, i9718, a24457)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737)))
Load13603ARR4(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, java.lang.Object(Tree(NULL, NULL, i9717)), i8141)), java.lang.Object(java.lang.String(i9717, i9716, i9718, a24457)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737))) → Cond_Load13603ARR4(i7628 + 1 > 0 && i7628 + 1 < i2 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, java.lang.Object(Tree(NULL, NULL, i9717)), i8141)), java.lang.Object(java.lang.String(i9717, i9716, i9718, a24457)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737)))
Cond_Load13603ARR4(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18890, java.lang.Object(Tree(NULL, NULL, i9717)), i8141)), java.lang.Object(java.lang.String(i9717, i9716, i9718, a24457)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737))) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630 + -1, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o18019, o18020, i290)))
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290)), java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290))) → Load13603ARR5(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737)))
Load13603ARR5(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737))) → Cond_Load13603ARR5(i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737)))
Cond_Load13603ARR5(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737))) → Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)), i290)), java.lang.Object(Tree(o18935Field0, o18935Field1, o18935Field2)))
JMP15126(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o19018Field0, o19018Field1, o19018Field2))) → Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o19018Field0, o19018Field1, o19018Field2)))
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(o19018Field0, o19018Field1, o19018Field2)), o18896, i8142))) → Load13603ARR6(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(o19018Field0, o19018Field1, o19018Field2)), o18896, i8142)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR6(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(o19018Field0, o19018Field1, o19018Field2)), o18896, i8142)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR6(i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(o19018Field0, o19018Field1, o19018Field2)), o18896, i8142)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR6(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(o19018Field0, o19018Field1, o19018Field2)), o18896, i8142)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(o19018Field0, o19018Field1, o19018Field2)))
JMP18886(java.lang.Object(ARRAY(i2, a19203data)), i8946, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290))) → Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i8946, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)))
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(NULL, o18896, i8142))) → Load13603ARR7(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(NULL, o18896, i8142)), java.lang.Object(java.lang.String(i9818, i9817, i9819, a24672)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR7(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9818)), o18896, i8142)), java.lang.Object(java.lang.String(i9818, i9817, i9819, a24672)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR7(i7628 + 1 > 0 && i7628 + 1 < i2 && i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9818)), o18896, i8142)), java.lang.Object(java.lang.String(i9818, i9817, i9819, a24672)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR7(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9818)), o18896, i8142)), java.lang.Object(java.lang.String(i9818, i9817, i9819, a24672)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630, java.lang.Object(Tree(o18019, o18020, i290)))
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, NULL, i290)), java.lang.Object(Tree(o18019, NULL, i290))) → Load13603ARR8(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, NULL, i290)), java.lang.Object(java.lang.String(i9577, i9576, i9578, a24141)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737)))
Load13603ARR8(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(NULL, NULL, i9577)), i290)), java.lang.Object(java.lang.String(i9577, i9576, i9578, a24141)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737))) → Cond_Load13603ARR8(i7628 + 1 > 0 && i7628 + 1 < i2 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(NULL, NULL, i9577)), i290)), java.lang.Object(java.lang.String(i9577, i9576, i9578, a24141)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737)))
Cond_Load13603ARR8(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(NULL, NULL, i9577)), i290)), java.lang.Object(java.lang.String(i9577, i9576, i9578, a24141)), java.lang.Object(java.lang.String(0, i7860, i7862, a19737))) → JMP18797(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630, java.lang.Object(Tree(o18019, java.lang.Object(Tree(NULL, NULL, i9577)), i290)))
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290)), java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290))) → Load13603ARR9(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR9(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR9(i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR9(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → JMP15126(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)), o18020, i290)), java.lang.Object(Tree(o18969Field0, o18969Field1, o18969Field2)))
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(NULL, o18020, i290)), java.lang.Object(Tree(NULL, o18020, i290))) → Load13603ARR10(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(NULL, o18020, i290)), java.lang.Object(java.lang.String(i9665, i9664, i9666, a24343)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR10(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9665)), o18020, i290)), java.lang.Object(java.lang.String(i9665, i9664, i9666, a24343)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR10(i7628 + 1 > 0 && i7628 + 1 < i2 && i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9665)), o18020, i290)), java.lang.Object(java.lang.String(i9665, i9664, i9666, a24343)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR10(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9665)), o18020, i290)), java.lang.Object(java.lang.String(i9665, i9664, i9666, a24343)), java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → JMP18886(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, i9665)), o18020, i290)))
The set Q consists of the following terms:
Load715(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR1(java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(0, x4, x5, x6)))
Cond_Load715ARR1(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(0, x4, x5, x6)))
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, 0, java.lang.Object(Tree(x4, x5, x6)), java.lang.Object(Tree(x7, x8, x9)))
Load715ARR2(java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)), java.lang.Object(java.lang.String(x8, x9, x10, x11)))
Cond_Load715ARR2(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)), java.lang.Object(java.lang.String(x8, x9, x10, x11)))
Inc15077(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, x9, x10)))
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, java.lang.Object(Tree(x9, x10, x11)), x12)))
Load13603ARR3(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, java.lang.Object(Tree(x9, x10, x11)), x12)), java.lang.Object(java.lang.String(0, x13, x14, x15)))
Cond_Load13603ARR3(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, java.lang.Object(Tree(x9, x10, x11)), x12)), java.lang.Object(java.lang.String(0, x13, x14, x15)))
Inc18978(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)))
JMP18797(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)))
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, NULL, x9)))
Load13603ARR4(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, java.lang.Object(Tree(NULL, NULL, x9)), x10)), java.lang.Object(java.lang.String(x9, x11, x12, x13)), java.lang.Object(java.lang.String(0, x14, x15, x16)))
Cond_Load13603ARR4(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, java.lang.Object(Tree(NULL, NULL, x9)), x10)), java.lang.Object(java.lang.String(x9, x11, x12, x13)), java.lang.Object(java.lang.String(0, x14, x15, x16)))
Load13603ARR5(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, java.lang.Object(Tree(x6, x7, x8)), x9)), java.lang.Object(java.lang.String(0, x10, x11, x12)))
Cond_Load13603ARR5(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, java.lang.Object(Tree(x6, x7, x8)), x9)), java.lang.Object(java.lang.String(0, x10, x11, x12)))
JMP15126(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, x9, x10)))
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(java.lang.Object(Tree(x8, x9, x10)), x11, x12)))
Load13603ARR6(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(java.lang.Object(Tree(x8, x9, x10)), x11, x12)), java.lang.Object(java.lang.String(x13, x14, x15, x16)))
Cond_Load13603ARR6(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(java.lang.Object(Tree(x8, x9, x10)), x11, x12)), java.lang.Object(java.lang.String(x13, x14, x15, x16)))
JMP18886(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)))
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(NULL, x8, x9)))
Load13603ARR7(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, x8)), x9, x10)), java.lang.Object(java.lang.String(x8, x11, x12, x13)), java.lang.Object(java.lang.String(x14, x15, x16, x17)))
Cond_Load13603ARR7(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, x8)), x9, x10)), java.lang.Object(java.lang.String(x8, x11, x12, x13)), java.lang.Object(java.lang.String(x14, x15, x16, x17)))
Load13603ARR8(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, java.lang.Object(Tree(NULL, NULL, x6)), x7)), java.lang.Object(java.lang.String(x6, x8, x9, x10)), java.lang.Object(java.lang.String(0, x11, x12, x13)))
Cond_Load13603ARR8(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(x5, java.lang.Object(Tree(NULL, NULL, x6)), x7)), java.lang.Object(java.lang.String(x6, x8, x9, x10)), java.lang.Object(java.lang.String(0, x11, x12, x13)))
Load13603ARR9(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(java.lang.Object(Tree(x5, x6, x7)), x8, x9)), java.lang.Object(java.lang.String(x10, x11, x12, x13)))
Cond_Load13603ARR9(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(java.lang.Object(Tree(x5, x6, x7)), x8, x9)), java.lang.Object(java.lang.String(x10, x11, x12, x13)))
Load13603ARR10(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, x5)), x6, x7)), java.lang.Object(java.lang.String(x5, x8, x9, x10)), java.lang.Object(java.lang.String(x11, x12, x13, x14)))
Cond_Load13603ARR10(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(Tree(java.lang.Object(Tree(NULL, NULL, x5)), x6, x7)), java.lang.Object(java.lang.String(x5, x8, x9, x10)), java.lang.Object(java.lang.String(x11, x12, x13, x14)))

(17) ITRSFilterProcessorProof (SOUND transformation)

We filter according the heuristic IdpCand1ShapeHeuristic
We removed arguments according to the following replacements:

Load715ARR1(x1, x2, x3, x4) → Load715ARR1(x1, x2, x3)
Cond_Load715ARR1(x1, x2, x3, x4, x5) → Cond_Load715ARR1(x1, x2, x3, x4)
Load13603(x1, x2, x3, x4, x5, x6) → Load13603(x1, x2, x3, x4)
Tree(x1, x2, x3) → Tree
Load715ARR2(x1, x2, x3, x4, x5) → Load715ARR2(x1, x2, x3, x5)
Cond_Load715ARR2(x1, x2, x3, x4, x5, x6) → Cond_Load715ARR2(x1, x2, x3, x4, x6)
Inc15077(x1, x2, x3, x4, x5, x6) → Inc15077(x1, x2, x3, x4)
Load13603ARR3(x1, x2, x3, x4, x5, x6, x7) → Load13603ARR3(x1, x2, x3, x4)
Cond_Load13603ARR3(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_Load13603ARR3(x1, x2, x3, x4, x5)
Inc18978(x1, x2, x3, x4, x5) → Inc18978(x1, x2, x3, x4)
JMP18797(x1, x2, x3, x4, x5) → JMP18797(x1, x2, x3, x4)
Load13603ARR4(x1, x2, x3, x4, x5, x6, x7, x8) → Load13603ARR4(x1, x2, x3, x4)
Cond_Load13603ARR4(x1, x2, x3, x4, x5, x6, x7, x8, x9) → Cond_Load13603ARR4(x1, x2, x3, x4, x5)
Load13603ARR5(x1, x2, x3, x4, x5, x6) → Load13603ARR5(x1, x2, x3, x4)
Cond_Load13603ARR5(x1, x2, x3, x4, x5, x6, x7) → Cond_Load13603ARR5(x1, x2, x3, x4, x5)
JMP15126(x1, x2, x3, x4, x5, x6) → JMP15126(x1, x2, x3, x4)
Load13603ARR6(x1, x2, x3, x4, x5, x6, x7) → Load13603ARR6(x1, x2, x3, x4, x7)
Cond_Load13603ARR6(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_Load13603ARR6(x1, x2, x3, x4, x5, x8)
JMP18886(x1, x2, x3, x4, x5) → JMP18886(x1, x2, x3, x4)
Load13603ARR7(x1, x2, x3, x4, x5, x6, x7, x8) → Load13603ARR7(x1, x2, x3, x4, x8)
Cond_Load13603ARR7(x1, x2, x3, x4, x5, x6, x7, x8, x9) → Cond_Load13603ARR7(x1, x2, x3, x4, x5, x9)
Load13603ARR8(x1, x2, x3, x4, x5, x6, x7) → Load13603ARR8(x1, x2, x3, x4)
Cond_Load13603ARR8(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_Load13603ARR8(x1, x2, x3, x4, x5)
Load13603ARR9(x1, x2, x3, x4, x5, x6) → Load13603ARR9(x1, x2, x3, x4, x6)
Cond_Load13603ARR9(x1, x2, x3, x4, x5, x6, x7) → Cond_Load13603ARR9(x1, x2, x3, x4, x5, x7)
Load13603ARR10(x1, x2, x3, x4, x5, x6, x7) → Load13603ARR10(x1, x2, x3, x4, x7)
Cond_Load13603ARR10(x1, x2, x3, x4, x5, x6, x7, x8) → Cond_Load13603ARR10(x1, x2, x3, x4, x5, x8)

(18) Obligation:

ITRS problem:

The following function symbols are pre-defined:
!=~Neq: (Integer, Integer) -> Boolean
*~Mul: (Integer, Integer) -> Integer
>=~Ge: (Integer, Integer) -> Boolean
-1~UnaryMinus: (Integer) -> Integer
|~Bwor: (Integer, Integer) -> Integer
/~Div: (Integer, Integer) -> Integer
=~Eq: (Integer, Integer) -> Boolean
~Bwxor: (Integer, Integer) -> Integer
||~Lor: (Boolean, Boolean) -> Boolean
!~Lnot: (Boolean) -> Boolean
<~Lt: (Integer, Integer) -> Boolean
-~Sub: (Integer, Integer) -> Integer
<=~Le: (Integer, Integer) -> Boolean
>~Gt: (Integer, Integer) -> Boolean
~~Bwnot: (Integer) -> Integer
%~Mod: (Integer, Integer) -> Integer
&~Bwand: (Integer, Integer) -> Integer
+~Add: (Integer, Integer) -> Integer
&&~Land: (Boolean, Boolean) -> Boolean

The TRS R consists of the following rules:
Load715(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → Load715ARR1(java.lang.Object(ARRAY(i2, a694data)), i56, i58)
Load715ARR1(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → Cond_Load715ARR1(i56 > 0 && i56 < i2 && i58 > 0 && i56 + 1 > 0, java.lang.Object(ARRAY(i2, a694data)), i56, i58)
Cond_Load715ARR1(TRUE, java.lang.Object(ARRAY(i2, a694data)), i56, i58) → Load715(java.lang.Object(ARRAY(i2, a694data)), i56 + 1, i58 + -1)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, 0) → Load715(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58 + -1)
Load715(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → Load715ARR2(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823)))
Load715ARR2(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823))) → Cond_Load715ARR2(i56 + 1 > 0 && i56 + 1 < i2 && i109 > 0 && i56 > 0 && i56 < i2 && i58 > 0 && i56 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823)))
Cond_Load715ARR2(TRUE, java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823))) → Load13603(java.lang.Object(ARRAY(i2, a694data)), i56 + 1 + 1, i58, i109)
Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630 + -1)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR3(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Load13603ARR3(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Cond_Load13603ARR3(i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Cond_Load13603ARR3(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630 + -1)
Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630 + -1)
JMP18797(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630 + -1)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR4(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Load13603ARR4(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Cond_Load13603ARR4(i7628 + 1 > 0 && i7628 + 1 < i2 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Cond_Load13603ARR4(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630 + -1)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR5(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Load13603ARR5(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Cond_Load13603ARR5(i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Cond_Load13603ARR5(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630)
JMP15126(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630) → Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR6(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR6(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR6(i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR6(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630)
JMP18886(java.lang.Object(ARRAY(i2, a19203data)), i8946, i58, i7630) → Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i8946, i58, i7630)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR7(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR7(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR7(i7628 + 1 > 0 && i7628 + 1 < i2 && i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR7(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR8(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Load13603ARR8(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Cond_Load13603ARR8(i7628 + 1 > 0 && i7628 + 1 < i2 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Cond_Load13603ARR8(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → JMP18797(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR9(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR9(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR9(i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR9(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → JMP15126(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR10(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR10(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR10(i7628 + 1 > 0 && i7628 + 1 < i2 && i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR10(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → JMP18886(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630)
The set Q consists of the following terms:
Load715(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR1(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Cond_Load715ARR1(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR2(java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)))
Cond_Load715ARR2(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)))
Inc15077(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR3(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR3(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Inc18978(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
JMP18797(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR4(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR4(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR5(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR5(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
JMP15126(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR6(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR6(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
JMP18886(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR7(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR7(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Load13603ARR8(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR8(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR9(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR9(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Load13603ARR10(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR10(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))

(19) ITRSFSMergerProof (SOUND transformation)

The following function symbols have been merged:

Inc18978, JMP18797
> Inc18978_4

(20) Obligation:

ITRS problem:

The following function symbols are pre-defined:
!=~Neq: (Integer, Integer) -> Boolean
*~Mul: (Integer, Integer) -> Integer
>=~Ge: (Integer, Integer) -> Boolean
-1~UnaryMinus: (Integer) -> Integer
|~Bwor: (Integer, Integer) -> Integer
/~Div: (Integer, Integer) -> Integer
=~Eq: (Integer, Integer) -> Boolean
~Bwxor: (Integer, Integer) -> Integer
||~Lor: (Boolean, Boolean) -> Boolean
!~Lnot: (Boolean) -> Boolean
<~Lt: (Integer, Integer) -> Boolean
-~Sub: (Integer, Integer) -> Integer
<=~Le: (Integer, Integer) -> Boolean
>~Gt: (Integer, Integer) -> Boolean
~~Bwnot: (Integer) -> Integer
%~Mod: (Integer, Integer) -> Integer
&~Bwand: (Integer, Integer) -> Integer
+~Add: (Integer, Integer) -> Integer
&&~Land: (Boolean, Boolean) -> Boolean

The TRS R consists of the following rules:
Load715(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → Load715ARR1(java.lang.Object(ARRAY(i2, a694data)), i56, i58)
Load715ARR1(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → Cond_Load715ARR1(i56 > 0 && i56 < i2 && i58 > 0 && i56 + 1 > 0, java.lang.Object(ARRAY(i2, a694data)), i56, i58)
Cond_Load715ARR1(TRUE, java.lang.Object(ARRAY(i2, a694data)), i56, i58) → Load715(java.lang.Object(ARRAY(i2, a694data)), i56 + 1, i58 + -1)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, 0) → Load715(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58 + -1)
Load715(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → Load715ARR2(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823)))
Load715ARR2(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823))) → Cond_Load715ARR2(i56 + 1 > 0 && i56 + 1 < i2 && i109 > 0 && i56 > 0 && i56 < i2 && i58 > 0 && i56 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823)))
Cond_Load715ARR2(TRUE, java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823))) → Load13603(java.lang.Object(ARRAY(i2, a694data)), i56 + 1 + 1, i58, i109)
Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630 + -1)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR3(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Load13603ARR3(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Cond_Load13603ARR3(i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Cond_Load13603ARR3(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630 + -1)
Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630 + -1)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR4(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Load13603ARR4(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Cond_Load13603ARR4(i7628 + 1 > 0 && i7628 + 1 < i2 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Cond_Load13603ARR4(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630 + -1)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR5(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Load13603ARR5(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Cond_Load13603ARR5(i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Cond_Load13603ARR5(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630)
JMP15126(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630) → Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR6(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR6(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR6(i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR6(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630)
JMP18886(java.lang.Object(ARRAY(i2, a19203data)), i8946, i58, i7630) → Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i8946, i58, i7630)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR7(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR7(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR7(i7628 + 1 > 0 && i7628 + 1 < i2 && i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR7(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR8(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Load13603ARR8(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Cond_Load13603ARR8(i7628 + 1 > 0 && i7628 + 1 < i2 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Cond_Load13603ARR8(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR9(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR9(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR9(i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR9(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → JMP15126(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR10(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR10(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR10(i7628 + 1 > 0 && i7628 + 1 < i2 && i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR10(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → JMP18886(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630)
The set Q consists of the following terms:
Load715(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR1(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Cond_Load715ARR1(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR2(java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)))
Cond_Load715ARR2(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)))
Inc15077(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR3(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR3(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Inc18978(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR4(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR4(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR5(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR5(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
JMP15126(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR6(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR6(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
JMP18886(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR7(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR7(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Load13603ARR8(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR8(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR9(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR9(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Load13603ARR10(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR10(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))

(21) ITRStoIDPProof (EQUIVALENT transformation)

Added dependency pairs

(22) Obligation:

IDP problem:
The following function symbols are pre-defined:
!=~Neq: (Integer, Integer) -> Boolean
*~Mul: (Integer, Integer) -> Integer
>=~Ge: (Integer, Integer) -> Boolean
-1~UnaryMinus: (Integer) -> Integer
|~Bwor: (Integer, Integer) -> Integer
/~Div: (Integer, Integer) -> Integer
=~Eq: (Integer, Integer) -> Boolean
~Bwxor: (Integer, Integer) -> Integer
||~Lor: (Boolean, Boolean) -> Boolean
!~Lnot: (Boolean) -> Boolean
<~Lt: (Integer, Integer) -> Boolean
-~Sub: (Integer, Integer) -> Integer
<=~Le: (Integer, Integer) -> Boolean
>~Gt: (Integer, Integer) -> Boolean
~~Bwnot: (Integer) -> Integer
%~Mod: (Integer, Integer) -> Integer
&~Bwand: (Integer, Integer) -> Integer
+~Add: (Integer, Integer) -> Integer
&&~Land: (Boolean, Boolean) -> Boolean


The following domains are used:

Boolean, Integer


The ITRS R consists of the following rules:
Load715(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → Load715ARR1(java.lang.Object(ARRAY(i2, a694data)), i56, i58)
Load715ARR1(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → Cond_Load715ARR1(i56 > 0 && i56 < i2 && i58 > 0 && i56 + 1 > 0, java.lang.Object(ARRAY(i2, a694data)), i56, i58)
Cond_Load715ARR1(TRUE, java.lang.Object(ARRAY(i2, a694data)), i56, i58) → Load715(java.lang.Object(ARRAY(i2, a694data)), i56 + 1, i58 + -1)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, 0) → Load715(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58 + -1)
Load715(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → Load715ARR2(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823)))
Load715ARR2(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823))) → Cond_Load715ARR2(i56 + 1 > 0 && i56 + 1 < i2 && i109 > 0 && i56 > 0 && i56 < i2 && i58 > 0 && i56 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823)))
Cond_Load715ARR2(TRUE, java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823))) → Load13603(java.lang.Object(ARRAY(i2, a694data)), i56 + 1 + 1, i58, i109)
Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630 + -1)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR3(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Load13603ARR3(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Cond_Load13603ARR3(i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Cond_Load13603ARR3(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630 + -1)
Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630 + -1)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR4(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Load13603ARR4(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Cond_Load13603ARR4(i7628 + 1 > 0 && i7628 + 1 < i2 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Cond_Load13603ARR4(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630 + -1)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR5(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Load13603ARR5(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Cond_Load13603ARR5(i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Cond_Load13603ARR5(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630)
JMP15126(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630) → Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR6(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR6(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR6(i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR6(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Inc15077(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630)
JMP18886(java.lang.Object(ARRAY(i2, a19203data)), i8946, i58, i7630) → Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i8946, i58, i7630)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR7(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR7(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR7(i7628 + 1 > 0 && i7628 + 1 < i2 && i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR7(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR8(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Load13603ARR8(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Cond_Load13603ARR8(i7628 + 1 > 0 && i7628 + 1 < i2 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
Cond_Load13603ARR8(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Inc18978(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR9(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR9(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR9(i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR9(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → JMP15126(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1, i58, i7630)
Load13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → Load13603ARR10(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Load13603ARR10(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → Cond_Load13603ARR10(i7628 + 1 > 0 && i7628 + 1 < i2 && i7996 > 0 && i7628 > 0 && i7628 < i2 && i7630 > 0 && i7628 + 1 + 1 > 0, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
Cond_Load13603ARR10(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → JMP18886(java.lang.Object(ARRAY(i2, a19203data)), i7628 + 1 + 1, i58, i7630)

The integer pair graph contains the following rules and edges:
(0): LOAD715(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0]) → LOAD715ARR1(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])
(1): LOAD715ARR1(java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1]) → COND_LOAD715ARR1(i56[1] > 0 && i56[1] < i2[1] && i58[1] > 0 && i56[1] + 1 > 0, java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])
(2): COND_LOAD715ARR1(TRUE, java.lang.Object(ARRAY(i2[2], a694data[2])), i56[2], i58[2]) → LOAD715(java.lang.Object(ARRAY(i2[2], a694data[2])), i56[2] + 1, i58[2] + -1)
(3): LOAD13603(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], i58[3], 0) → LOAD715(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], i58[3] + -1)
(4): LOAD715(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4]) → LOAD715ARR2(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4], java.lang.Object(java.lang.String(i109[4], i86[4], i88[4], a823[4])))
(5): LOAD715ARR2(java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5]))) → COND_LOAD715ARR2(i56[5] + 1 > 0 && i56[5] + 1 < i2[5] && i109[5] > 0 && i56[5] > 0 && i56[5] < i2[5] && i58[5] > 0 && i56[5] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))
(6): COND_LOAD715ARR2(TRUE, java.lang.Object(ARRAY(i2[6], a694data[6])), i56[6], i58[6], java.lang.Object(java.lang.String(i109[6], i86[6], i88[6], a823[6]))) → LOAD13603(java.lang.Object(ARRAY(i2[6], a694data[6])), i56[6] + 1 + 1, i58[6], i109[6])
(7): INC15077(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7]) → LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7] + -1)
(8): LOAD13603(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8]) → LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])
(9): LOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9]) → COND_LOAD13603ARR3(i7628[9] > 0 && i7628[9] < i2[9] && i7630[9] > 0 && i7628[9] + 1 > 0, java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])
(10): COND_LOAD13603ARR3(TRUE, java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10], i58[10], i7630[10]) → LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10] + 1, i58[10], i7630[10] + -1)
(11): INC18978(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11]) → LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11] + -1)
(12): LOAD13603(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12]) → LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])
(13): LOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13]) → COND_LOAD13603ARR4(i7628[13] + 1 > 0 && i7628[13] + 1 < i2[13] && i7628[13] > 0 && i7628[13] < i2[13] && i7630[13] > 0 && i7628[13] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])
(14): COND_LOAD13603ARR4(TRUE, java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14], i58[14], i7630[14]) → LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14] + 1 + 1, i58[14], i7630[14] + -1)
(15): LOAD13603(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15]) → LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])
(16): LOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16]) → COND_LOAD13603ARR5(i7628[16] > 0 && i7628[16] < i2[16] && i7630[16] > 0 && i7628[16] + 1 > 0, java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])
(17): COND_LOAD13603ARR5(TRUE, java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17], i58[17], i7630[17]) → INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17] + 1, i58[17], i7630[17])
(18): JMP15126'(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18]) → INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])
(19): LOAD13603(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19]) → LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])))
(20): LOAD13603ARR6(java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20]))) → COND_LOAD13603ARR6(i7996[20] > 0 && i7628[20] > 0 && i7628[20] < i2[20] && i7630[20] > 0 && i7628[20] + 1 > 0, java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))
(21): COND_LOAD13603ARR6(TRUE, java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21], i58[21], i7630[21], java.lang.Object(java.lang.String(i7996[21], i7860[21], i7862[21], a19737[21]))) → INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21] + 1, i58[21], i7630[21])
(22): JMP18886'(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22]) → INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])
(23): LOAD13603(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23]) → LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))
(24): LOAD13603ARR7(java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24]))) → COND_LOAD13603ARR7(i7628[24] + 1 > 0 && i7628[24] + 1 < i2[24] && i7996[24] > 0 && i7628[24] > 0 && i7628[24] < i2[24] && i7630[24] > 0 && i7628[24] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))
(25): COND_LOAD13603ARR7(TRUE, java.lang.Object(ARRAY(i2[25], a19203data[25])), i7628[25], i58[25], i7630[25], java.lang.Object(java.lang.String(i7996[25], i7860[25], i7862[25], a19737[25]))) → INC18978(java.lang.Object(ARRAY(i2[25], a19203data[25])), i7628[25] + 1 + 1, i58[25], i7630[25])
(26): LOAD13603(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26]) → LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])
(27): LOAD13603ARR8(java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27]) → COND_LOAD13603ARR8(i7628[27] + 1 > 0 && i7628[27] + 1 < i2[27] && i7628[27] > 0 && i7628[27] < i2[27] && i7630[27] > 0 && i7628[27] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])
(28): COND_LOAD13603ARR8(TRUE, java.lang.Object(ARRAY(i2[28], a19203data[28])), i7628[28], i58[28], i7630[28]) → INC18978(java.lang.Object(ARRAY(i2[28], a19203data[28])), i7628[28] + 1 + 1, i58[28], i7630[28])
(29): LOAD13603(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29]) → LOAD13603ARR9(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29], java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29])))
(30): LOAD13603ARR9(java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30]))) → COND_LOAD13603ARR9(i7996[30] > 0 && i7628[30] > 0 && i7628[30] < i2[30] && i7630[30] > 0 && i7628[30] + 1 > 0, java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))
(31): COND_LOAD13603ARR9(TRUE, java.lang.Object(ARRAY(i2[31], a19203data[31])), i7628[31], i58[31], i7630[31], java.lang.Object(java.lang.String(i7996[31], i7860[31], i7862[31], a19737[31]))) → JMP15126'(java.lang.Object(ARRAY(i2[31], a19203data[31])), i7628[31] + 1, i58[31], i7630[31])
(32): LOAD13603(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32]) → LOAD13603ARR10(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32], java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32])))
(33): LOAD13603ARR10(java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33]))) → COND_LOAD13603ARR10(i7628[33] + 1 > 0 && i7628[33] + 1 < i2[33] && i7996[33] > 0 && i7628[33] > 0 && i7628[33] < i2[33] && i7630[33] > 0 && i7628[33] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))
(34): COND_LOAD13603ARR10(TRUE, java.lang.Object(ARRAY(i2[34], a19203data[34])), i7628[34], i58[34], i7630[34], java.lang.Object(java.lang.String(i7996[34], i7860[34], i7862[34], a19737[34]))) → JMP18886'(java.lang.Object(ARRAY(i2[34], a19203data[34])), i7628[34] + 1 + 1, i58[34], i7630[34])

(0) -> (1), if ((i58[0]* i58[1])∧(i56[0]* i56[1])∧(java.lang.Object(ARRAY(i2[0], a694data[0])) →* java.lang.Object(ARRAY(i2[1], a694data[1]))))


(1) -> (2), if ((i56[1] > 0 && i56[1] < i2[1] && i58[1] > 0 && i56[1] + 1 > 0* TRUE)∧(java.lang.Object(ARRAY(i2[1], a694data[1])) →* java.lang.Object(ARRAY(i2[2], a694data[2])))∧(i58[1]* i58[2])∧(i56[1]* i56[2]))


(2) -> (0), if ((i56[2] + 1* i56[0])∧(i58[2] + -1* i58[0])∧(java.lang.Object(ARRAY(i2[2], a694data[2])) →* java.lang.Object(ARRAY(i2[0], a694data[0]))))


(2) -> (4), if ((i58[2] + -1* i58[4])∧(java.lang.Object(ARRAY(i2[2], a694data[2])) →* java.lang.Object(ARRAY(i2[4], a694data[4])))∧(i56[2] + 1* i56[4]))


(3) -> (0), if ((java.lang.Object(ARRAY(i2[3], a19203data[3])) →* java.lang.Object(ARRAY(i2[0], a694data[0])))∧(i7628[3]* i56[0])∧(i58[3] + -1* i58[0]))


(3) -> (4), if ((i58[3] + -1* i58[4])∧(java.lang.Object(ARRAY(i2[3], a19203data[3])) →* java.lang.Object(ARRAY(i2[4], a694data[4])))∧(i7628[3]* i56[4]))


(4) -> (5), if ((java.lang.Object(java.lang.String(i109[4], i86[4], i88[4], a823[4])) →* java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))∧(i56[4]* i56[5])∧(java.lang.Object(ARRAY(i2[4], a694data[4])) →* java.lang.Object(ARRAY(i2[5], a694data[5])))∧(i58[4]* i58[5]))


(5) -> (6), if ((i56[5] + 1 > 0 && i56[5] + 1 < i2[5] && i109[5] > 0 && i56[5] > 0 && i56[5] < i2[5] && i58[5] > 0 && i56[5] + 1 + 1 > 0* TRUE)∧(i58[5]* i58[6])∧(java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])) →* java.lang.Object(java.lang.String(i109[6], i86[6], i88[6], a823[6])))∧(i56[5]* i56[6])∧(java.lang.Object(ARRAY(i2[5], a694data[5])) →* java.lang.Object(ARRAY(i2[6], a694data[6]))))


(6) -> (3), if ((i58[6]* i58[3])∧(i109[6]* 0)∧(java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[3], a19203data[3])))∧(i56[6] + 1 + 1* i7628[3]))


(6) -> (8), if ((java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[8], a19203data[8])))∧(i58[6]* i58[8])∧(i109[6]* i7630[8])∧(i56[6] + 1 + 1* i7628[8]))


(6) -> (12), if ((java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[12], a19203data[12])))∧(i58[6]* i58[12])∧(i56[6] + 1 + 1* i7628[12])∧(i109[6]* i7630[12]))


(6) -> (15), if ((i109[6]* i7630[15])∧(i58[6]* i58[15])∧(java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[15], a19203data[15])))∧(i56[6] + 1 + 1* i7628[15]))


(6) -> (19), if ((i109[6]* i7630[19])∧(i58[6]* i58[19])∧(i56[6] + 1 + 1* i7628[19])∧(java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[19], a19203data[19]))))


(6) -> (23), if ((java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[23], a19203data[23])))∧(i109[6]* i7630[23])∧(i56[6] + 1 + 1* i7628[23])∧(i58[6]* i58[23]))


(6) -> (26), if ((i56[6] + 1 + 1* i7628[26])∧(i58[6]* i58[26])∧(java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[26], a19203data[26])))∧(i109[6]* i7630[26]))


(6) -> (29), if ((i56[6] + 1 + 1* i7628[29])∧(i109[6]* i7630[29])∧(java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[29], a19203data[29])))∧(i58[6]* i58[29]))


(6) -> (32), if ((i58[6]* i58[32])∧(i109[6]* i7630[32])∧(i56[6] + 1 + 1* i7628[32])∧(java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[32], a19203data[32]))))


(7) -> (3), if ((i58[7]* i58[3])∧(i7710[7]* i7628[3])∧(java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[3], a19203data[3])))∧(i7630[7] + -1* 0))


(7) -> (8), if ((i58[7]* i58[8])∧(i7630[7] + -1* i7630[8])∧(java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[8], a19203data[8])))∧(i7710[7]* i7628[8]))


(7) -> (12), if ((i7710[7]* i7628[12])∧(i58[7]* i58[12])∧(java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[12], a19203data[12])))∧(i7630[7] + -1* i7630[12]))


(7) -> (15), if ((i7710[7]* i7628[15])∧(java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[15], a19203data[15])))∧(i7630[7] + -1* i7630[15])∧(i58[7]* i58[15]))


(7) -> (19), if ((i58[7]* i58[19])∧(i7710[7]* i7628[19])∧(java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[19], a19203data[19])))∧(i7630[7] + -1* i7630[19]))


(7) -> (23), if ((java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[23], a19203data[23])))∧(i58[7]* i58[23])∧(i7630[7] + -1* i7630[23])∧(i7710[7]* i7628[23]))


(7) -> (26), if ((i7710[7]* i7628[26])∧(i58[7]* i58[26])∧(java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[26], a19203data[26])))∧(i7630[7] + -1* i7630[26]))


(7) -> (29), if ((i58[7]* i58[29])∧(java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[29], a19203data[29])))∧(i7630[7] + -1* i7630[29])∧(i7710[7]* i7628[29]))


(7) -> (32), if ((i58[7]* i58[32])∧(java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[32], a19203data[32])))∧(i7710[7]* i7628[32])∧(i7630[7] + -1* i7630[32]))


(8) -> (9), if ((java.lang.Object(ARRAY(i2[8], a19203data[8])) →* java.lang.Object(ARRAY(i2[9], a19203data[9])))∧(i58[8]* i58[9])∧(i7630[8]* i7630[9])∧(i7628[8]* i7628[9]))


(9) -> (10), if ((i58[9]* i58[10])∧(i7628[9] > 0 && i7628[9] < i2[9] && i7630[9] > 0 && i7628[9] + 1 > 0* TRUE)∧(java.lang.Object(ARRAY(i2[9], a19203data[9])) →* java.lang.Object(ARRAY(i2[10], a19203data[10])))∧(i7628[9]* i7628[10])∧(i7630[9]* i7630[10]))


(10) -> (3), if ((i58[10]* i58[3])∧(i7628[10] + 1* i7628[3])∧(java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[3], a19203data[3])))∧(i7630[10] + -1* 0))


(10) -> (8), if ((i7630[10] + -1* i7630[8])∧(java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[8], a19203data[8])))∧(i58[10]* i58[8])∧(i7628[10] + 1* i7628[8]))


(10) -> (12), if ((i58[10]* i58[12])∧(java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[12], a19203data[12])))∧(i7630[10] + -1* i7630[12])∧(i7628[10] + 1* i7628[12]))


(10) -> (15), if ((java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[15], a19203data[15])))∧(i7630[10] + -1* i7630[15])∧(i7628[10] + 1* i7628[15])∧(i58[10]* i58[15]))


(10) -> (19), if ((i58[10]* i58[19])∧(java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[19], a19203data[19])))∧(i7630[10] + -1* i7630[19])∧(i7628[10] + 1* i7628[19]))


(10) -> (23), if ((i7630[10] + -1* i7630[23])∧(i58[10]* i58[23])∧(java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[23], a19203data[23])))∧(i7628[10] + 1* i7628[23]))


(10) -> (26), if ((java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[26], a19203data[26])))∧(i7628[10] + 1* i7628[26])∧(i7630[10] + -1* i7630[26])∧(i58[10]* i58[26]))


(10) -> (29), if ((i7630[10] + -1* i7630[29])∧(java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[29], a19203data[29])))∧(i7628[10] + 1* i7628[29])∧(i58[10]* i58[29]))


(10) -> (32), if ((i7630[10] + -1* i7630[32])∧(i58[10]* i58[32])∧(java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[32], a19203data[32])))∧(i7628[10] + 1* i7628[32]))


(11) -> (3), if ((i8902[11]* i7628[3])∧(i7630[11] + -1* 0)∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[3], a19203data[3])))∧(i58[11]* i58[3]))


(11) -> (8), if ((i8902[11]* i7628[8])∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[8], a19203data[8])))∧(i7630[11] + -1* i7630[8])∧(i58[11]* i58[8]))


(11) -> (12), if ((i58[11]* i58[12])∧(i8902[11]* i7628[12])∧(i7630[11] + -1* i7630[12])∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[12], a19203data[12]))))


(11) -> (15), if ((i8902[11]* i7628[15])∧(i7630[11] + -1* i7630[15])∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[15], a19203data[15])))∧(i58[11]* i58[15]))


(11) -> (19), if ((i8902[11]* i7628[19])∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[19], a19203data[19])))∧(i7630[11] + -1* i7630[19])∧(i58[11]* i58[19]))


(11) -> (23), if ((i8902[11]* i7628[23])∧(i58[11]* i58[23])∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[23], a19203data[23])))∧(i7630[11] + -1* i7630[23]))


(11) -> (26), if ((i58[11]* i58[26])∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[26], a19203data[26])))∧(i8902[11]* i7628[26])∧(i7630[11] + -1* i7630[26]))


(11) -> (29), if ((i7630[11] + -1* i7630[29])∧(i8902[11]* i7628[29])∧(i58[11]* i58[29])∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[29], a19203data[29]))))


(11) -> (32), if ((i8902[11]* i7628[32])∧(i58[11]* i58[32])∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[32], a19203data[32])))∧(i7630[11] + -1* i7630[32]))


(12) -> (13), if ((i7630[12]* i7630[13])∧(i58[12]* i58[13])∧(i7628[12]* i7628[13])∧(java.lang.Object(ARRAY(i2[12], a19203data[12])) →* java.lang.Object(ARRAY(i2[13], a19203data[13]))))


(13) -> (14), if ((i7628[13]* i7628[14])∧(java.lang.Object(ARRAY(i2[13], a19203data[13])) →* java.lang.Object(ARRAY(i2[14], a19203data[14])))∧(i7628[13] + 1 > 0 && i7628[13] + 1 < i2[13] && i7628[13] > 0 && i7628[13] < i2[13] && i7630[13] > 0 && i7628[13] + 1 + 1 > 0* TRUE)∧(i7630[13]* i7630[14])∧(i58[13]* i58[14]))


(14) -> (3), if ((java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[3], a19203data[3])))∧(i7628[14] + 1 + 1* i7628[3])∧(i7630[14] + -1* 0)∧(i58[14]* i58[3]))


(14) -> (8), if ((i7630[14] + -1* i7630[8])∧(i7628[14] + 1 + 1* i7628[8])∧(java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[8], a19203data[8])))∧(i58[14]* i58[8]))


(14) -> (12), if ((i7630[14] + -1* i7630[12])∧(java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[12], a19203data[12])))∧(i7628[14] + 1 + 1* i7628[12])∧(i58[14]* i58[12]))


(14) -> (15), if ((i58[14]* i58[15])∧(i7628[14] + 1 + 1* i7628[15])∧(java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[15], a19203data[15])))∧(i7630[14] + -1* i7630[15]))


(14) -> (19), if ((i7628[14] + 1 + 1* i7628[19])∧(java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[19], a19203data[19])))∧(i7630[14] + -1* i7630[19])∧(i58[14]* i58[19]))


(14) -> (23), if ((java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[23], a19203data[23])))∧(i7628[14] + 1 + 1* i7628[23])∧(i7630[14] + -1* i7630[23])∧(i58[14]* i58[23]))


(14) -> (26), if ((i58[14]* i58[26])∧(i7628[14] + 1 + 1* i7628[26])∧(java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[26], a19203data[26])))∧(i7630[14] + -1* i7630[26]))


(14) -> (29), if ((i7630[14] + -1* i7630[29])∧(java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[29], a19203data[29])))∧(i58[14]* i58[29])∧(i7628[14] + 1 + 1* i7628[29]))


(14) -> (32), if ((java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[32], a19203data[32])))∧(i58[14]* i58[32])∧(i7630[14] + -1* i7630[32])∧(i7628[14] + 1 + 1* i7628[32]))


(15) -> (16), if ((i58[15]* i58[16])∧(i7628[15]* i7628[16])∧(java.lang.Object(ARRAY(i2[15], a19203data[15])) →* java.lang.Object(ARRAY(i2[16], a19203data[16])))∧(i7630[15]* i7630[16]))


(16) -> (17), if ((java.lang.Object(ARRAY(i2[16], a19203data[16])) →* java.lang.Object(ARRAY(i2[17], a19203data[17])))∧(i7628[16]* i7628[17])∧(i7630[16]* i7630[17])∧(i58[16]* i58[17])∧(i7628[16] > 0 && i7628[16] < i2[16] && i7630[16] > 0 && i7628[16] + 1 > 0* TRUE))


(17) -> (7), if ((i7630[17]* i7630[7])∧(i7628[17] + 1* i7710[7])∧(i58[17]* i58[7])∧(java.lang.Object(ARRAY(i2[17], a19203data[17])) →* java.lang.Object(ARRAY(i2[7], a19203data[7]))))


(18) -> (7), if ((i7710[18]* i7710[7])∧(java.lang.Object(ARRAY(i2[18], a19203data[18])) →* java.lang.Object(ARRAY(i2[7], a19203data[7])))∧(i58[18]* i58[7])∧(i7630[18]* i7630[7]))


(19) -> (20), if ((i58[19]* i58[20])∧(java.lang.Object(ARRAY(i2[19], a19203data[19])) →* java.lang.Object(ARRAY(i2[20], a19203data[20])))∧(i7630[19]* i7630[20])∧(java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])) →* java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))∧(i7628[19]* i7628[20]))


(20) -> (21), if ((i7630[20]* i7630[21])∧(i7628[20]* i7628[21])∧(java.lang.Object(ARRAY(i2[20], a19203data[20])) →* java.lang.Object(ARRAY(i2[21], a19203data[21])))∧(i58[20]* i58[21])∧(i7996[20] > 0 && i7628[20] > 0 && i7628[20] < i2[20] && i7630[20] > 0 && i7628[20] + 1 > 0* TRUE)∧(java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])) →* java.lang.Object(java.lang.String(i7996[21], i7860[21], i7862[21], a19737[21]))))


(21) -> (7), if ((java.lang.Object(ARRAY(i2[21], a19203data[21])) →* java.lang.Object(ARRAY(i2[7], a19203data[7])))∧(i7628[21] + 1* i7710[7])∧(i58[21]* i58[7])∧(i7630[21]* i7630[7]))


(22) -> (11), if ((i58[22]* i58[11])∧(java.lang.Object(ARRAY(i2[22], a19203data[22])) →* java.lang.Object(ARRAY(i2[11], a19203data[11])))∧(i8946[22]* i8902[11])∧(i7630[22]* i7630[11]))


(23) -> (24), if ((i7630[23]* i7630[24])∧(java.lang.Object(ARRAY(i2[23], a19203data[23])) →* java.lang.Object(ARRAY(i2[24], a19203data[24])))∧(i58[23]* i58[24])∧(java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])) →* java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))∧(i7628[23]* i7628[24]))


(24) -> (25), if ((i58[24]* i58[25])∧(java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])) →* java.lang.Object(java.lang.String(i7996[25], i7860[25], i7862[25], a19737[25])))∧(java.lang.Object(ARRAY(i2[24], a19203data[24])) →* java.lang.Object(ARRAY(i2[25], a19203data[25])))∧(i7628[24]* i7628[25])∧(i7628[24] + 1 > 0 && i7628[24] + 1 < i2[24] && i7996[24] > 0 && i7628[24] > 0 && i7628[24] < i2[24] && i7630[24] > 0 && i7628[24] + 1 + 1 > 0* TRUE)∧(i7630[24]* i7630[25]))


(25) -> (11), if ((i7630[25]* i7630[11])∧(java.lang.Object(ARRAY(i2[25], a19203data[25])) →* java.lang.Object(ARRAY(i2[11], a19203data[11])))∧(i7628[25] + 1 + 1* i8902[11])∧(i58[25]* i58[11]))


(26) -> (27), if ((java.lang.Object(ARRAY(i2[26], a19203data[26])) →* java.lang.Object(ARRAY(i2[27], a19203data[27])))∧(i7628[26]* i7628[27])∧(i7630[26]* i7630[27])∧(i58[26]* i58[27]))


(27) -> (28), if ((i7628[27]* i7628[28])∧(i7630[27]* i7630[28])∧(i58[27]* i58[28])∧(java.lang.Object(ARRAY(i2[27], a19203data[27])) →* java.lang.Object(ARRAY(i2[28], a19203data[28])))∧(i7628[27] + 1 > 0 && i7628[27] + 1 < i2[27] && i7628[27] > 0 && i7628[27] < i2[27] && i7630[27] > 0 && i7628[27] + 1 + 1 > 0* TRUE))


(28) -> (11), if ((i58[28]* i58[11])∧(i7628[28] + 1 + 1* i8902[11])∧(java.lang.Object(ARRAY(i2[28], a19203data[28])) →* java.lang.Object(ARRAY(i2[11], a19203data[11])))∧(i7630[28]* i7630[11]))


(29) -> (30), if ((java.lang.Object(ARRAY(i2[29], a19203data[29])) →* java.lang.Object(ARRAY(i2[30], a19203data[30])))∧(i7630[29]* i7630[30])∧(i7628[29]* i7628[30])∧(i58[29]* i58[30])∧(java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29])) →* java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30]))))


(30) -> (31), if ((i58[30]* i58[31])∧(i7628[30]* i7628[31])∧(java.lang.Object(ARRAY(i2[30], a19203data[30])) →* java.lang.Object(ARRAY(i2[31], a19203data[31])))∧(i7996[30] > 0 && i7628[30] > 0 && i7628[30] < i2[30] && i7630[30] > 0 && i7628[30] + 1 > 0* TRUE)∧(java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])) →* java.lang.Object(java.lang.String(i7996[31], i7860[31], i7862[31], a19737[31])))∧(i7630[30]* i7630[31]))


(31) -> (18), if ((i58[31]* i58[18])∧(java.lang.Object(ARRAY(i2[31], a19203data[31])) →* java.lang.Object(ARRAY(i2[18], a19203data[18])))∧(i7630[31]* i7630[18])∧(i7628[31] + 1* i7710[18]))


(32) -> (33), if ((java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32])) →* java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))∧(i58[32]* i58[33])∧(java.lang.Object(ARRAY(i2[32], a19203data[32])) →* java.lang.Object(ARRAY(i2[33], a19203data[33])))∧(i7628[32]* i7628[33])∧(i7630[32]* i7630[33]))


(33) -> (34), if ((i7628[33]* i7628[34])∧(java.lang.Object(ARRAY(i2[33], a19203data[33])) →* java.lang.Object(ARRAY(i2[34], a19203data[34])))∧(i7628[33] + 1 > 0 && i7628[33] + 1 < i2[33] && i7996[33] > 0 && i7628[33] > 0 && i7628[33] < i2[33] && i7630[33] > 0 && i7628[33] + 1 + 1 > 0* TRUE)∧(java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])) →* java.lang.Object(java.lang.String(i7996[34], i7860[34], i7862[34], a19737[34])))∧(i58[33]* i58[34])∧(i7630[33]* i7630[34]))


(34) -> (22), if ((i7630[34]* i7630[22])∧(i7628[34] + 1 + 1* i8946[22])∧(i58[34]* i58[22])∧(java.lang.Object(ARRAY(i2[34], a19203data[34])) →* java.lang.Object(ARRAY(i2[22], a19203data[22]))))



The set Q consists of the following terms:
Load715(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR1(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Cond_Load715ARR1(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR2(java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)))
Cond_Load715ARR2(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)))
Inc15077(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR3(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR3(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Inc18978(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR4(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR4(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR5(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR5(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
JMP15126(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR6(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR6(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
JMP18886(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR7(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR7(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Load13603ARR8(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR8(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR9(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR9(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Load13603ARR10(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR10(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))

(23) UsableRulesProof (EQUIVALENT transformation)

As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R.

(24) Obligation:

IDP problem:
The following function symbols are pre-defined:
!=~Neq: (Integer, Integer) -> Boolean
*~Mul: (Integer, Integer) -> Integer
>=~Ge: (Integer, Integer) -> Boolean
-1~UnaryMinus: (Integer) -> Integer
|~Bwor: (Integer, Integer) -> Integer
/~Div: (Integer, Integer) -> Integer
=~Eq: (Integer, Integer) -> Boolean
~Bwxor: (Integer, Integer) -> Integer
||~Lor: (Boolean, Boolean) -> Boolean
!~Lnot: (Boolean) -> Boolean
<~Lt: (Integer, Integer) -> Boolean
-~Sub: (Integer, Integer) -> Integer
<=~Le: (Integer, Integer) -> Boolean
>~Gt: (Integer, Integer) -> Boolean
~~Bwnot: (Integer) -> Integer
%~Mod: (Integer, Integer) -> Integer
&~Bwand: (Integer, Integer) -> Integer
+~Add: (Integer, Integer) -> Integer
&&~Land: (Boolean, Boolean) -> Boolean


The following domains are used:

Boolean, Integer


R is empty.

The integer pair graph contains the following rules and edges:
(0): LOAD715(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0]) → LOAD715ARR1(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])
(1): LOAD715ARR1(java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1]) → COND_LOAD715ARR1(i56[1] > 0 && i56[1] < i2[1] && i58[1] > 0 && i56[1] + 1 > 0, java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])
(2): COND_LOAD715ARR1(TRUE, java.lang.Object(ARRAY(i2[2], a694data[2])), i56[2], i58[2]) → LOAD715(java.lang.Object(ARRAY(i2[2], a694data[2])), i56[2] + 1, i58[2] + -1)
(3): LOAD13603(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], i58[3], 0) → LOAD715(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], i58[3] + -1)
(4): LOAD715(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4]) → LOAD715ARR2(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4], java.lang.Object(java.lang.String(i109[4], i86[4], i88[4], a823[4])))
(5): LOAD715ARR2(java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5]))) → COND_LOAD715ARR2(i56[5] + 1 > 0 && i56[5] + 1 < i2[5] && i109[5] > 0 && i56[5] > 0 && i56[5] < i2[5] && i58[5] > 0 && i56[5] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))
(6): COND_LOAD715ARR2(TRUE, java.lang.Object(ARRAY(i2[6], a694data[6])), i56[6], i58[6], java.lang.Object(java.lang.String(i109[6], i86[6], i88[6], a823[6]))) → LOAD13603(java.lang.Object(ARRAY(i2[6], a694data[6])), i56[6] + 1 + 1, i58[6], i109[6])
(7): INC15077(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7]) → LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7] + -1)
(8): LOAD13603(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8]) → LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])
(9): LOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9]) → COND_LOAD13603ARR3(i7628[9] > 0 && i7628[9] < i2[9] && i7630[9] > 0 && i7628[9] + 1 > 0, java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])
(10): COND_LOAD13603ARR3(TRUE, java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10], i58[10], i7630[10]) → LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10] + 1, i58[10], i7630[10] + -1)
(11): INC18978(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11]) → LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11] + -1)
(12): LOAD13603(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12]) → LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])
(13): LOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13]) → COND_LOAD13603ARR4(i7628[13] + 1 > 0 && i7628[13] + 1 < i2[13] && i7628[13] > 0 && i7628[13] < i2[13] && i7630[13] > 0 && i7628[13] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])
(14): COND_LOAD13603ARR4(TRUE, java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14], i58[14], i7630[14]) → LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14] + 1 + 1, i58[14], i7630[14] + -1)
(15): LOAD13603(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15]) → LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])
(16): LOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16]) → COND_LOAD13603ARR5(i7628[16] > 0 && i7628[16] < i2[16] && i7630[16] > 0 && i7628[16] + 1 > 0, java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])
(17): COND_LOAD13603ARR5(TRUE, java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17], i58[17], i7630[17]) → INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17] + 1, i58[17], i7630[17])
(18): JMP15126'(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18]) → INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])
(19): LOAD13603(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19]) → LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])))
(20): LOAD13603ARR6(java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20]))) → COND_LOAD13603ARR6(i7996[20] > 0 && i7628[20] > 0 && i7628[20] < i2[20] && i7630[20] > 0 && i7628[20] + 1 > 0, java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))
(21): COND_LOAD13603ARR6(TRUE, java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21], i58[21], i7630[21], java.lang.Object(java.lang.String(i7996[21], i7860[21], i7862[21], a19737[21]))) → INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21] + 1, i58[21], i7630[21])
(22): JMP18886'(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22]) → INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])
(23): LOAD13603(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23]) → LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))
(24): LOAD13603ARR7(java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24]))) → COND_LOAD13603ARR7(i7628[24] + 1 > 0 && i7628[24] + 1 < i2[24] && i7996[24] > 0 && i7628[24] > 0 && i7628[24] < i2[24] && i7630[24] > 0 && i7628[24] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))
(25): COND_LOAD13603ARR7(TRUE, java.lang.Object(ARRAY(i2[25], a19203data[25])), i7628[25], i58[25], i7630[25], java.lang.Object(java.lang.String(i7996[25], i7860[25], i7862[25], a19737[25]))) → INC18978(java.lang.Object(ARRAY(i2[25], a19203data[25])), i7628[25] + 1 + 1, i58[25], i7630[25])
(26): LOAD13603(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26]) → LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])
(27): LOAD13603ARR8(java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27]) → COND_LOAD13603ARR8(i7628[27] + 1 > 0 && i7628[27] + 1 < i2[27] && i7628[27] > 0 && i7628[27] < i2[27] && i7630[27] > 0 && i7628[27] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])
(28): COND_LOAD13603ARR8(TRUE, java.lang.Object(ARRAY(i2[28], a19203data[28])), i7628[28], i58[28], i7630[28]) → INC18978(java.lang.Object(ARRAY(i2[28], a19203data[28])), i7628[28] + 1 + 1, i58[28], i7630[28])
(29): LOAD13603(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29]) → LOAD13603ARR9(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29], java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29])))
(30): LOAD13603ARR9(java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30]))) → COND_LOAD13603ARR9(i7996[30] > 0 && i7628[30] > 0 && i7628[30] < i2[30] && i7630[30] > 0 && i7628[30] + 1 > 0, java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))
(31): COND_LOAD13603ARR9(TRUE, java.lang.Object(ARRAY(i2[31], a19203data[31])), i7628[31], i58[31], i7630[31], java.lang.Object(java.lang.String(i7996[31], i7860[31], i7862[31], a19737[31]))) → JMP15126'(java.lang.Object(ARRAY(i2[31], a19203data[31])), i7628[31] + 1, i58[31], i7630[31])
(32): LOAD13603(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32]) → LOAD13603ARR10(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32], java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32])))
(33): LOAD13603ARR10(java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33]))) → COND_LOAD13603ARR10(i7628[33] + 1 > 0 && i7628[33] + 1 < i2[33] && i7996[33] > 0 && i7628[33] > 0 && i7628[33] < i2[33] && i7630[33] > 0 && i7628[33] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))
(34): COND_LOAD13603ARR10(TRUE, java.lang.Object(ARRAY(i2[34], a19203data[34])), i7628[34], i58[34], i7630[34], java.lang.Object(java.lang.String(i7996[34], i7860[34], i7862[34], a19737[34]))) → JMP18886'(java.lang.Object(ARRAY(i2[34], a19203data[34])), i7628[34] + 1 + 1, i58[34], i7630[34])

(0) -> (1), if ((i58[0]* i58[1])∧(i56[0]* i56[1])∧(java.lang.Object(ARRAY(i2[0], a694data[0])) →* java.lang.Object(ARRAY(i2[1], a694data[1]))))


(1) -> (2), if ((i56[1] > 0 && i56[1] < i2[1] && i58[1] > 0 && i56[1] + 1 > 0* TRUE)∧(java.lang.Object(ARRAY(i2[1], a694data[1])) →* java.lang.Object(ARRAY(i2[2], a694data[2])))∧(i58[1]* i58[2])∧(i56[1]* i56[2]))


(2) -> (0), if ((i56[2] + 1* i56[0])∧(i58[2] + -1* i58[0])∧(java.lang.Object(ARRAY(i2[2], a694data[2])) →* java.lang.Object(ARRAY(i2[0], a694data[0]))))


(2) -> (4), if ((i58[2] + -1* i58[4])∧(java.lang.Object(ARRAY(i2[2], a694data[2])) →* java.lang.Object(ARRAY(i2[4], a694data[4])))∧(i56[2] + 1* i56[4]))


(3) -> (0), if ((java.lang.Object(ARRAY(i2[3], a19203data[3])) →* java.lang.Object(ARRAY(i2[0], a694data[0])))∧(i7628[3]* i56[0])∧(i58[3] + -1* i58[0]))


(3) -> (4), if ((i58[3] + -1* i58[4])∧(java.lang.Object(ARRAY(i2[3], a19203data[3])) →* java.lang.Object(ARRAY(i2[4], a694data[4])))∧(i7628[3]* i56[4]))


(4) -> (5), if ((java.lang.Object(java.lang.String(i109[4], i86[4], i88[4], a823[4])) →* java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))∧(i56[4]* i56[5])∧(java.lang.Object(ARRAY(i2[4], a694data[4])) →* java.lang.Object(ARRAY(i2[5], a694data[5])))∧(i58[4]* i58[5]))


(5) -> (6), if ((i56[5] + 1 > 0 && i56[5] + 1 < i2[5] && i109[5] > 0 && i56[5] > 0 && i56[5] < i2[5] && i58[5] > 0 && i56[5] + 1 + 1 > 0* TRUE)∧(i58[5]* i58[6])∧(java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])) →* java.lang.Object(java.lang.String(i109[6], i86[6], i88[6], a823[6])))∧(i56[5]* i56[6])∧(java.lang.Object(ARRAY(i2[5], a694data[5])) →* java.lang.Object(ARRAY(i2[6], a694data[6]))))


(6) -> (3), if ((i58[6]* i58[3])∧(i109[6]* 0)∧(java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[3], a19203data[3])))∧(i56[6] + 1 + 1* i7628[3]))


(6) -> (8), if ((java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[8], a19203data[8])))∧(i58[6]* i58[8])∧(i109[6]* i7630[8])∧(i56[6] + 1 + 1* i7628[8]))


(6) -> (12), if ((java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[12], a19203data[12])))∧(i58[6]* i58[12])∧(i56[6] + 1 + 1* i7628[12])∧(i109[6]* i7630[12]))


(6) -> (15), if ((i109[6]* i7630[15])∧(i58[6]* i58[15])∧(java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[15], a19203data[15])))∧(i56[6] + 1 + 1* i7628[15]))


(6) -> (19), if ((i109[6]* i7630[19])∧(i58[6]* i58[19])∧(i56[6] + 1 + 1* i7628[19])∧(java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[19], a19203data[19]))))


(6) -> (23), if ((java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[23], a19203data[23])))∧(i109[6]* i7630[23])∧(i56[6] + 1 + 1* i7628[23])∧(i58[6]* i58[23]))


(6) -> (26), if ((i56[6] + 1 + 1* i7628[26])∧(i58[6]* i58[26])∧(java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[26], a19203data[26])))∧(i109[6]* i7630[26]))


(6) -> (29), if ((i56[6] + 1 + 1* i7628[29])∧(i109[6]* i7630[29])∧(java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[29], a19203data[29])))∧(i58[6]* i58[29]))


(6) -> (32), if ((i58[6]* i58[32])∧(i109[6]* i7630[32])∧(i56[6] + 1 + 1* i7628[32])∧(java.lang.Object(ARRAY(i2[6], a694data[6])) →* java.lang.Object(ARRAY(i2[32], a19203data[32]))))


(7) -> (3), if ((i58[7]* i58[3])∧(i7710[7]* i7628[3])∧(java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[3], a19203data[3])))∧(i7630[7] + -1* 0))


(7) -> (8), if ((i58[7]* i58[8])∧(i7630[7] + -1* i7630[8])∧(java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[8], a19203data[8])))∧(i7710[7]* i7628[8]))


(7) -> (12), if ((i7710[7]* i7628[12])∧(i58[7]* i58[12])∧(java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[12], a19203data[12])))∧(i7630[7] + -1* i7630[12]))


(7) -> (15), if ((i7710[7]* i7628[15])∧(java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[15], a19203data[15])))∧(i7630[7] + -1* i7630[15])∧(i58[7]* i58[15]))


(7) -> (19), if ((i58[7]* i58[19])∧(i7710[7]* i7628[19])∧(java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[19], a19203data[19])))∧(i7630[7] + -1* i7630[19]))


(7) -> (23), if ((java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[23], a19203data[23])))∧(i58[7]* i58[23])∧(i7630[7] + -1* i7630[23])∧(i7710[7]* i7628[23]))


(7) -> (26), if ((i7710[7]* i7628[26])∧(i58[7]* i58[26])∧(java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[26], a19203data[26])))∧(i7630[7] + -1* i7630[26]))


(7) -> (29), if ((i58[7]* i58[29])∧(java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[29], a19203data[29])))∧(i7630[7] + -1* i7630[29])∧(i7710[7]* i7628[29]))


(7) -> (32), if ((i58[7]* i58[32])∧(java.lang.Object(ARRAY(i2[7], a19203data[7])) →* java.lang.Object(ARRAY(i2[32], a19203data[32])))∧(i7710[7]* i7628[32])∧(i7630[7] + -1* i7630[32]))


(8) -> (9), if ((java.lang.Object(ARRAY(i2[8], a19203data[8])) →* java.lang.Object(ARRAY(i2[9], a19203data[9])))∧(i58[8]* i58[9])∧(i7630[8]* i7630[9])∧(i7628[8]* i7628[9]))


(9) -> (10), if ((i58[9]* i58[10])∧(i7628[9] > 0 && i7628[9] < i2[9] && i7630[9] > 0 && i7628[9] + 1 > 0* TRUE)∧(java.lang.Object(ARRAY(i2[9], a19203data[9])) →* java.lang.Object(ARRAY(i2[10], a19203data[10])))∧(i7628[9]* i7628[10])∧(i7630[9]* i7630[10]))


(10) -> (3), if ((i58[10]* i58[3])∧(i7628[10] + 1* i7628[3])∧(java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[3], a19203data[3])))∧(i7630[10] + -1* 0))


(10) -> (8), if ((i7630[10] + -1* i7630[8])∧(java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[8], a19203data[8])))∧(i58[10]* i58[8])∧(i7628[10] + 1* i7628[8]))


(10) -> (12), if ((i58[10]* i58[12])∧(java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[12], a19203data[12])))∧(i7630[10] + -1* i7630[12])∧(i7628[10] + 1* i7628[12]))


(10) -> (15), if ((java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[15], a19203data[15])))∧(i7630[10] + -1* i7630[15])∧(i7628[10] + 1* i7628[15])∧(i58[10]* i58[15]))


(10) -> (19), if ((i58[10]* i58[19])∧(java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[19], a19203data[19])))∧(i7630[10] + -1* i7630[19])∧(i7628[10] + 1* i7628[19]))


(10) -> (23), if ((i7630[10] + -1* i7630[23])∧(i58[10]* i58[23])∧(java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[23], a19203data[23])))∧(i7628[10] + 1* i7628[23]))


(10) -> (26), if ((java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[26], a19203data[26])))∧(i7628[10] + 1* i7628[26])∧(i7630[10] + -1* i7630[26])∧(i58[10]* i58[26]))


(10) -> (29), if ((i7630[10] + -1* i7630[29])∧(java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[29], a19203data[29])))∧(i7628[10] + 1* i7628[29])∧(i58[10]* i58[29]))


(10) -> (32), if ((i7630[10] + -1* i7630[32])∧(i58[10]* i58[32])∧(java.lang.Object(ARRAY(i2[10], a19203data[10])) →* java.lang.Object(ARRAY(i2[32], a19203data[32])))∧(i7628[10] + 1* i7628[32]))


(11) -> (3), if ((i8902[11]* i7628[3])∧(i7630[11] + -1* 0)∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[3], a19203data[3])))∧(i58[11]* i58[3]))


(11) -> (8), if ((i8902[11]* i7628[8])∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[8], a19203data[8])))∧(i7630[11] + -1* i7630[8])∧(i58[11]* i58[8]))


(11) -> (12), if ((i58[11]* i58[12])∧(i8902[11]* i7628[12])∧(i7630[11] + -1* i7630[12])∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[12], a19203data[12]))))


(11) -> (15), if ((i8902[11]* i7628[15])∧(i7630[11] + -1* i7630[15])∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[15], a19203data[15])))∧(i58[11]* i58[15]))


(11) -> (19), if ((i8902[11]* i7628[19])∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[19], a19203data[19])))∧(i7630[11] + -1* i7630[19])∧(i58[11]* i58[19]))


(11) -> (23), if ((i8902[11]* i7628[23])∧(i58[11]* i58[23])∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[23], a19203data[23])))∧(i7630[11] + -1* i7630[23]))


(11) -> (26), if ((i58[11]* i58[26])∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[26], a19203data[26])))∧(i8902[11]* i7628[26])∧(i7630[11] + -1* i7630[26]))


(11) -> (29), if ((i7630[11] + -1* i7630[29])∧(i8902[11]* i7628[29])∧(i58[11]* i58[29])∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[29], a19203data[29]))))


(11) -> (32), if ((i8902[11]* i7628[32])∧(i58[11]* i58[32])∧(java.lang.Object(ARRAY(i2[11], a19203data[11])) →* java.lang.Object(ARRAY(i2[32], a19203data[32])))∧(i7630[11] + -1* i7630[32]))


(12) -> (13), if ((i7630[12]* i7630[13])∧(i58[12]* i58[13])∧(i7628[12]* i7628[13])∧(java.lang.Object(ARRAY(i2[12], a19203data[12])) →* java.lang.Object(ARRAY(i2[13], a19203data[13]))))


(13) -> (14), if ((i7628[13]* i7628[14])∧(java.lang.Object(ARRAY(i2[13], a19203data[13])) →* java.lang.Object(ARRAY(i2[14], a19203data[14])))∧(i7628[13] + 1 > 0 && i7628[13] + 1 < i2[13] && i7628[13] > 0 && i7628[13] < i2[13] && i7630[13] > 0 && i7628[13] + 1 + 1 > 0* TRUE)∧(i7630[13]* i7630[14])∧(i58[13]* i58[14]))


(14) -> (3), if ((java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[3], a19203data[3])))∧(i7628[14] + 1 + 1* i7628[3])∧(i7630[14] + -1* 0)∧(i58[14]* i58[3]))


(14) -> (8), if ((i7630[14] + -1* i7630[8])∧(i7628[14] + 1 + 1* i7628[8])∧(java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[8], a19203data[8])))∧(i58[14]* i58[8]))


(14) -> (12), if ((i7630[14] + -1* i7630[12])∧(java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[12], a19203data[12])))∧(i7628[14] + 1 + 1* i7628[12])∧(i58[14]* i58[12]))


(14) -> (15), if ((i58[14]* i58[15])∧(i7628[14] + 1 + 1* i7628[15])∧(java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[15], a19203data[15])))∧(i7630[14] + -1* i7630[15]))


(14) -> (19), if ((i7628[14] + 1 + 1* i7628[19])∧(java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[19], a19203data[19])))∧(i7630[14] + -1* i7630[19])∧(i58[14]* i58[19]))


(14) -> (23), if ((java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[23], a19203data[23])))∧(i7628[14] + 1 + 1* i7628[23])∧(i7630[14] + -1* i7630[23])∧(i58[14]* i58[23]))


(14) -> (26), if ((i58[14]* i58[26])∧(i7628[14] + 1 + 1* i7628[26])∧(java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[26], a19203data[26])))∧(i7630[14] + -1* i7630[26]))


(14) -> (29), if ((i7630[14] + -1* i7630[29])∧(java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[29], a19203data[29])))∧(i58[14]* i58[29])∧(i7628[14] + 1 + 1* i7628[29]))


(14) -> (32), if ((java.lang.Object(ARRAY(i2[14], a19203data[14])) →* java.lang.Object(ARRAY(i2[32], a19203data[32])))∧(i58[14]* i58[32])∧(i7630[14] + -1* i7630[32])∧(i7628[14] + 1 + 1* i7628[32]))


(15) -> (16), if ((i58[15]* i58[16])∧(i7628[15]* i7628[16])∧(java.lang.Object(ARRAY(i2[15], a19203data[15])) →* java.lang.Object(ARRAY(i2[16], a19203data[16])))∧(i7630[15]* i7630[16]))


(16) -> (17), if ((java.lang.Object(ARRAY(i2[16], a19203data[16])) →* java.lang.Object(ARRAY(i2[17], a19203data[17])))∧(i7628[16]* i7628[17])∧(i7630[16]* i7630[17])∧(i58[16]* i58[17])∧(i7628[16] > 0 && i7628[16] < i2[16] && i7630[16] > 0 && i7628[16] + 1 > 0* TRUE))


(17) -> (7), if ((i7630[17]* i7630[7])∧(i7628[17] + 1* i7710[7])∧(i58[17]* i58[7])∧(java.lang.Object(ARRAY(i2[17], a19203data[17])) →* java.lang.Object(ARRAY(i2[7], a19203data[7]))))


(18) -> (7), if ((i7710[18]* i7710[7])∧(java.lang.Object(ARRAY(i2[18], a19203data[18])) →* java.lang.Object(ARRAY(i2[7], a19203data[7])))∧(i58[18]* i58[7])∧(i7630[18]* i7630[7]))


(19) -> (20), if ((i58[19]* i58[20])∧(java.lang.Object(ARRAY(i2[19], a19203data[19])) →* java.lang.Object(ARRAY(i2[20], a19203data[20])))∧(i7630[19]* i7630[20])∧(java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])) →* java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))∧(i7628[19]* i7628[20]))


(20) -> (21), if ((i7630[20]* i7630[21])∧(i7628[20]* i7628[21])∧(java.lang.Object(ARRAY(i2[20], a19203data[20])) →* java.lang.Object(ARRAY(i2[21], a19203data[21])))∧(i58[20]* i58[21])∧(i7996[20] > 0 && i7628[20] > 0 && i7628[20] < i2[20] && i7630[20] > 0 && i7628[20] + 1 > 0* TRUE)∧(java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])) →* java.lang.Object(java.lang.String(i7996[21], i7860[21], i7862[21], a19737[21]))))


(21) -> (7), if ((java.lang.Object(ARRAY(i2[21], a19203data[21])) →* java.lang.Object(ARRAY(i2[7], a19203data[7])))∧(i7628[21] + 1* i7710[7])∧(i58[21]* i58[7])∧(i7630[21]* i7630[7]))


(22) -> (11), if ((i58[22]* i58[11])∧(java.lang.Object(ARRAY(i2[22], a19203data[22])) →* java.lang.Object(ARRAY(i2[11], a19203data[11])))∧(i8946[22]* i8902[11])∧(i7630[22]* i7630[11]))


(23) -> (24), if ((i7630[23]* i7630[24])∧(java.lang.Object(ARRAY(i2[23], a19203data[23])) →* java.lang.Object(ARRAY(i2[24], a19203data[24])))∧(i58[23]* i58[24])∧(java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])) →* java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))∧(i7628[23]* i7628[24]))


(24) -> (25), if ((i58[24]* i58[25])∧(java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])) →* java.lang.Object(java.lang.String(i7996[25], i7860[25], i7862[25], a19737[25])))∧(java.lang.Object(ARRAY(i2[24], a19203data[24])) →* java.lang.Object(ARRAY(i2[25], a19203data[25])))∧(i7628[24]* i7628[25])∧(i7628[24] + 1 > 0 && i7628[24] + 1 < i2[24] && i7996[24] > 0 && i7628[24] > 0 && i7628[24] < i2[24] && i7630[24] > 0 && i7628[24] + 1 + 1 > 0* TRUE)∧(i7630[24]* i7630[25]))


(25) -> (11), if ((i7630[25]* i7630[11])∧(java.lang.Object(ARRAY(i2[25], a19203data[25])) →* java.lang.Object(ARRAY(i2[11], a19203data[11])))∧(i7628[25] + 1 + 1* i8902[11])∧(i58[25]* i58[11]))


(26) -> (27), if ((java.lang.Object(ARRAY(i2[26], a19203data[26])) →* java.lang.Object(ARRAY(i2[27], a19203data[27])))∧(i7628[26]* i7628[27])∧(i7630[26]* i7630[27])∧(i58[26]* i58[27]))


(27) -> (28), if ((i7628[27]* i7628[28])∧(i7630[27]* i7630[28])∧(i58[27]* i58[28])∧(java.lang.Object(ARRAY(i2[27], a19203data[27])) →* java.lang.Object(ARRAY(i2[28], a19203data[28])))∧(i7628[27] + 1 > 0 && i7628[27] + 1 < i2[27] && i7628[27] > 0 && i7628[27] < i2[27] && i7630[27] > 0 && i7628[27] + 1 + 1 > 0* TRUE))


(28) -> (11), if ((i58[28]* i58[11])∧(i7628[28] + 1 + 1* i8902[11])∧(java.lang.Object(ARRAY(i2[28], a19203data[28])) →* java.lang.Object(ARRAY(i2[11], a19203data[11])))∧(i7630[28]* i7630[11]))


(29) -> (30), if ((java.lang.Object(ARRAY(i2[29], a19203data[29])) →* java.lang.Object(ARRAY(i2[30], a19203data[30])))∧(i7630[29]* i7630[30])∧(i7628[29]* i7628[30])∧(i58[29]* i58[30])∧(java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29])) →* java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30]))))


(30) -> (31), if ((i58[30]* i58[31])∧(i7628[30]* i7628[31])∧(java.lang.Object(ARRAY(i2[30], a19203data[30])) →* java.lang.Object(ARRAY(i2[31], a19203data[31])))∧(i7996[30] > 0 && i7628[30] > 0 && i7628[30] < i2[30] && i7630[30] > 0 && i7628[30] + 1 > 0* TRUE)∧(java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])) →* java.lang.Object(java.lang.String(i7996[31], i7860[31], i7862[31], a19737[31])))∧(i7630[30]* i7630[31]))


(31) -> (18), if ((i58[31]* i58[18])∧(java.lang.Object(ARRAY(i2[31], a19203data[31])) →* java.lang.Object(ARRAY(i2[18], a19203data[18])))∧(i7630[31]* i7630[18])∧(i7628[31] + 1* i7710[18]))


(32) -> (33), if ((java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32])) →* java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))∧(i58[32]* i58[33])∧(java.lang.Object(ARRAY(i2[32], a19203data[32])) →* java.lang.Object(ARRAY(i2[33], a19203data[33])))∧(i7628[32]* i7628[33])∧(i7630[32]* i7630[33]))


(33) -> (34), if ((i7628[33]* i7628[34])∧(java.lang.Object(ARRAY(i2[33], a19203data[33])) →* java.lang.Object(ARRAY(i2[34], a19203data[34])))∧(i7628[33] + 1 > 0 && i7628[33] + 1 < i2[33] && i7996[33] > 0 && i7628[33] > 0 && i7628[33] < i2[33] && i7630[33] > 0 && i7628[33] + 1 + 1 > 0* TRUE)∧(java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])) →* java.lang.Object(java.lang.String(i7996[34], i7860[34], i7862[34], a19737[34])))∧(i58[33]* i58[34])∧(i7630[33]* i7630[34]))


(34) -> (22), if ((i7630[34]* i7630[22])∧(i7628[34] + 1 + 1* i8946[22])∧(i58[34]* i58[22])∧(java.lang.Object(ARRAY(i2[34], a19203data[34])) →* java.lang.Object(ARRAY(i2[22], a19203data[22]))))



The set Q consists of the following terms:
Load715(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR1(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Cond_Load715ARR1(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR2(java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)))
Cond_Load715ARR2(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)))
Inc15077(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR3(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR3(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Inc18978(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR4(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR4(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR5(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR5(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
JMP15126(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR6(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR6(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
JMP18886(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR7(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR7(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Load13603ARR8(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR8(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR9(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR9(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Load13603ARR10(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR10(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))

(25) ItpfGraphProof (EQUIVALENT transformation)

Applied rule ItpfICap [ICap]

(26) Obligation:

IDP problem:
The following function symbols are pre-defined:
!=~Neq: (Integer, Integer) -> Boolean
*~Mul: (Integer, Integer) -> Integer
>=~Ge: (Integer, Integer) -> Boolean
-1~UnaryMinus: (Integer) -> Integer
|~Bwor: (Integer, Integer) -> Integer
/~Div: (Integer, Integer) -> Integer
=~Eq: (Integer, Integer) -> Boolean
~Bwxor: (Integer, Integer) -> Integer
||~Lor: (Boolean, Boolean) -> Boolean
!~Lnot: (Boolean) -> Boolean
<~Lt: (Integer, Integer) -> Boolean
-~Sub: (Integer, Integer) -> Integer
<=~Le: (Integer, Integer) -> Boolean
>~Gt: (Integer, Integer) -> Boolean
~~Bwnot: (Integer) -> Integer
%~Mod: (Integer, Integer) -> Integer
&~Bwand: (Integer, Integer) -> Integer
+~Add: (Integer, Integer) -> Integer
&&~Land: (Boolean, Boolean) -> Boolean


The following domains are used:

Boolean, Integer


R is empty.

The integer pair graph contains the following rules and edges:
(0): LOAD715(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0]) → LOAD715ARR1(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])
(1): LOAD715ARR1(java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1]) → COND_LOAD715ARR1(i56[1] > 0 && i56[1] < i2[1] && i58[1] > 0 && i56[1] + 1 > 0, java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])
(2): COND_LOAD715ARR1(TRUE, java.lang.Object(ARRAY(i2[2], a694data[2])), i56[2], i58[2]) → LOAD715(java.lang.Object(ARRAY(i2[2], a694data[2])), i56[2] + 1, i58[2] + -1)
(3): LOAD13603(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], i58[3], 0) → LOAD715(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], i58[3] + -1)
(4): LOAD715(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4]) → LOAD715ARR2(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4], java.lang.Object(java.lang.String(i109[4], i86[4], i88[4], a823[4])))
(5): LOAD715ARR2(java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5]))) → COND_LOAD715ARR2(i56[5] + 1 > 0 && i56[5] + 1 < i2[5] && i109[5] > 0 && i56[5] > 0 && i56[5] < i2[5] && i58[5] > 0 && i56[5] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))
(6): COND_LOAD715ARR2(TRUE, java.lang.Object(ARRAY(i2[6], a694data[6])), i56[6], i58[6], java.lang.Object(java.lang.String(i109[6], i86[6], i88[6], a823[6]))) → LOAD13603(java.lang.Object(ARRAY(i2[6], a694data[6])), i56[6] + 1 + 1, i58[6], i109[6])
(7): INC15077(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7]) → LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7] + -1)
(8): LOAD13603(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8]) → LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])
(9): LOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9]) → COND_LOAD13603ARR3(i7628[9] > 0 && i7628[9] < i2[9] && i7630[9] > 0 && i7628[9] + 1 > 0, java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])
(10): COND_LOAD13603ARR3(TRUE, java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10], i58[10], i7630[10]) → LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10] + 1, i58[10], i7630[10] + -1)
(11): INC18978(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11]) → LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11] + -1)
(12): LOAD13603(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12]) → LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])
(13): LOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13]) → COND_LOAD13603ARR4(i7628[13] + 1 > 0 && i7628[13] + 1 < i2[13] && i7628[13] > 0 && i7628[13] < i2[13] && i7630[13] > 0 && i7628[13] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])
(14): COND_LOAD13603ARR4(TRUE, java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14], i58[14], i7630[14]) → LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14] + 1 + 1, i58[14], i7630[14] + -1)
(15): LOAD13603(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15]) → LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])
(16): LOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16]) → COND_LOAD13603ARR5(i7628[16] > 0 && i7628[16] < i2[16] && i7630[16] > 0 && i7628[16] + 1 > 0, java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])
(17): COND_LOAD13603ARR5(TRUE, java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17], i58[17], i7630[17]) → INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17] + 1, i58[17], i7630[17])
(18): JMP15126'(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18]) → INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])
(19): LOAD13603(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19]) → LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])))
(20): LOAD13603ARR6(java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20]))) → COND_LOAD13603ARR6(i7996[20] > 0 && i7628[20] > 0 && i7628[20] < i2[20] && i7630[20] > 0 && i7628[20] + 1 > 0, java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))
(21): COND_LOAD13603ARR6(TRUE, java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21], i58[21], i7630[21], java.lang.Object(java.lang.String(i7996[21], i7860[21], i7862[21], a19737[21]))) → INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21] + 1, i58[21], i7630[21])
(22): JMP18886'(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22]) → INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])
(23): LOAD13603(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23]) → LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))
(24): LOAD13603ARR7(java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24]))) → COND_LOAD13603ARR7(i7628[24] + 1 > 0 && i7628[24] + 1 < i2[24] && i7996[24] > 0 && i7628[24] > 0 && i7628[24] < i2[24] && i7630[24] > 0 && i7628[24] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))
(25): COND_LOAD13603ARR7(TRUE, java.lang.Object(ARRAY(i2[25], a19203data[25])), i7628[25], i58[25], i7630[25], java.lang.Object(java.lang.String(i7996[25], i7860[25], i7862[25], a19737[25]))) → INC18978(java.lang.Object(ARRAY(i2[25], a19203data[25])), i7628[25] + 1 + 1, i58[25], i7630[25])
(26): LOAD13603(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26]) → LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])
(27): LOAD13603ARR8(java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27]) → COND_LOAD13603ARR8(i7628[27] + 1 > 0 && i7628[27] + 1 < i2[27] && i7628[27] > 0 && i7628[27] < i2[27] && i7630[27] > 0 && i7628[27] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])
(28): COND_LOAD13603ARR8(TRUE, java.lang.Object(ARRAY(i2[28], a19203data[28])), i7628[28], i58[28], i7630[28]) → INC18978(java.lang.Object(ARRAY(i2[28], a19203data[28])), i7628[28] + 1 + 1, i58[28], i7630[28])
(29): LOAD13603(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29]) → LOAD13603ARR9(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29], java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29])))
(30): LOAD13603ARR9(java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30]))) → COND_LOAD13603ARR9(i7996[30] > 0 && i7628[30] > 0 && i7628[30] < i2[30] && i7630[30] > 0 && i7628[30] + 1 > 0, java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))
(31): COND_LOAD13603ARR9(TRUE, java.lang.Object(ARRAY(i2[31], a19203data[31])), i7628[31], i58[31], i7630[31], java.lang.Object(java.lang.String(i7996[31], i7860[31], i7862[31], a19737[31]))) → JMP15126'(java.lang.Object(ARRAY(i2[31], a19203data[31])), i7628[31] + 1, i58[31], i7630[31])
(32): LOAD13603(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32]) → LOAD13603ARR10(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32], java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32])))
(33): LOAD13603ARR10(java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33]))) → COND_LOAD13603ARR10(i7628[33] + 1 > 0 && i7628[33] + 1 < i2[33] && i7996[33] > 0 && i7628[33] > 0 && i7628[33] < i2[33] && i7630[33] > 0 && i7628[33] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))
(34): COND_LOAD13603ARR10(TRUE, java.lang.Object(ARRAY(i2[34], a19203data[34])), i7628[34], i58[34], i7630[34], java.lang.Object(java.lang.String(i7996[34], i7860[34], i7862[34], a19737[34]))) → JMP18886'(java.lang.Object(ARRAY(i2[34], a19203data[34])), i7628[34] + 1 + 1, i58[34], i7630[34])

(0) -> (1), if ((i58[0]* i58[1])∧(i56[0]* i56[1])∧((i2[0]* i2[1])∧(a694data[0]* a694data[1])))


(1) -> (2), if ((i56[1] > 0 && i56[1] < i2[1] && i58[1] > 0 && i56[1] + 1 > 0* TRUE)∧((i2[1]* i2[2])∧(a694data[1]* a694data[2]))∧(i58[1]* i58[2])∧(i56[1]* i56[2]))


(2) -> (0), if ((i56[2] + 1* i56[0])∧(i58[2] + -1* i58[0])∧((i2[2]* i2[0])∧(a694data[2]* a694data[0])))


(2) -> (4), if ((i58[2] + -1* i58[4])∧((i2[2]* i2[4])∧(a694data[2]* a694data[4]))∧(i56[2] + 1* i56[4]))


(3) -> (0), if (((i2[3]* i2[0])∧(a19203data[3]* a694data[0]))∧(i7628[3]* i56[0])∧(i58[3] + -1* i58[0]))


(3) -> (4), if ((i58[3] + -1* i58[4])∧((i2[3]* i2[4])∧(a19203data[3]* a694data[4]))∧(i7628[3]* i56[4]))


(4) -> (5), if (((i109[4]* i109[5])∧(i86[4]* i86[5])∧(i88[4]* i88[5])∧(a823[4]* a823[5]))∧(i56[4]* i56[5])∧((i2[4]* i2[5])∧(a694data[4]* a694data[5]))∧(i58[4]* i58[5]))


(5) -> (6), if ((i56[5] + 1 > 0 && i56[5] + 1 < i2[5] && i109[5] > 0 && i56[5] > 0 && i56[5] < i2[5] && i58[5] > 0 && i56[5] + 1 + 1 > 0* TRUE)∧(i58[5]* i58[6])∧((i109[5]* i109[6])∧(i86[5]* i86[6])∧(i88[5]* i88[6])∧(a823[5]* a823[6]))∧(i56[5]* i56[6])∧((i2[5]* i2[6])∧(a694data[5]* a694data[6])))


(6) -> (3), if ((i58[6]* i58[3])∧(i109[6]* 0)∧((i2[6]* i2[3])∧(a694data[6]* a19203data[3]))∧(i56[6] + 1 + 1* i7628[3]))


(6) -> (8), if (((i2[6]* i2[8])∧(a694data[6]* a19203data[8]))∧(i58[6]* i58[8])∧(i109[6]* i7630[8])∧(i56[6] + 1 + 1* i7628[8]))


(6) -> (12), if (((i2[6]* i2[12])∧(a694data[6]* a19203data[12]))∧(i58[6]* i58[12])∧(i56[6] + 1 + 1* i7628[12])∧(i109[6]* i7630[12]))


(6) -> (15), if ((i109[6]* i7630[15])∧(i58[6]* i58[15])∧((i2[6]* i2[15])∧(a694data[6]* a19203data[15]))∧(i56[6] + 1 + 1* i7628[15]))


(6) -> (19), if ((i109[6]* i7630[19])∧(i58[6]* i58[19])∧(i56[6] + 1 + 1* i7628[19])∧((i2[6]* i2[19])∧(a694data[6]* a19203data[19])))


(6) -> (23), if (((i2[6]* i2[23])∧(a694data[6]* a19203data[23]))∧(i109[6]* i7630[23])∧(i56[6] + 1 + 1* i7628[23])∧(i58[6]* i58[23]))


(6) -> (26), if ((i56[6] + 1 + 1* i7628[26])∧(i58[6]* i58[26])∧((i2[6]* i2[26])∧(a694data[6]* a19203data[26]))∧(i109[6]* i7630[26]))


(6) -> (29), if ((i56[6] + 1 + 1* i7628[29])∧(i109[6]* i7630[29])∧((i2[6]* i2[29])∧(a694data[6]* a19203data[29]))∧(i58[6]* i58[29]))


(6) -> (32), if ((i58[6]* i58[32])∧(i109[6]* i7630[32])∧(i56[6] + 1 + 1* i7628[32])∧((i2[6]* i2[32])∧(a694data[6]* a19203data[32])))


(7) -> (3), if ((i58[7]* i58[3])∧(i7710[7]* i7628[3])∧((i2[7]* i2[3])∧(a19203data[7]* a19203data[3]))∧(i7630[7] + -1* 0))


(7) -> (8), if ((i58[7]* i58[8])∧(i7630[7] + -1* i7630[8])∧((i2[7]* i2[8])∧(a19203data[7]* a19203data[8]))∧(i7710[7]* i7628[8]))


(7) -> (12), if ((i7710[7]* i7628[12])∧(i58[7]* i58[12])∧((i2[7]* i2[12])∧(a19203data[7]* a19203data[12]))∧(i7630[7] + -1* i7630[12]))


(7) -> (15), if ((i7710[7]* i7628[15])∧((i2[7]* i2[15])∧(a19203data[7]* a19203data[15]))∧(i7630[7] + -1* i7630[15])∧(i58[7]* i58[15]))


(7) -> (19), if ((i58[7]* i58[19])∧(i7710[7]* i7628[19])∧((i2[7]* i2[19])∧(a19203data[7]* a19203data[19]))∧(i7630[7] + -1* i7630[19]))


(7) -> (23), if (((i2[7]* i2[23])∧(a19203data[7]* a19203data[23]))∧(i58[7]* i58[23])∧(i7630[7] + -1* i7630[23])∧(i7710[7]* i7628[23]))


(7) -> (26), if ((i7710[7]* i7628[26])∧(i58[7]* i58[26])∧((i2[7]* i2[26])∧(a19203data[7]* a19203data[26]))∧(i7630[7] + -1* i7630[26]))


(7) -> (29), if ((i58[7]* i58[29])∧((i2[7]* i2[29])∧(a19203data[7]* a19203data[29]))∧(i7630[7] + -1* i7630[29])∧(i7710[7]* i7628[29]))


(7) -> (32), if ((i58[7]* i58[32])∧((i2[7]* i2[32])∧(a19203data[7]* a19203data[32]))∧(i7710[7]* i7628[32])∧(i7630[7] + -1* i7630[32]))


(8) -> (9), if (((i2[8]* i2[9])∧(a19203data[8]* a19203data[9]))∧(i58[8]* i58[9])∧(i7630[8]* i7630[9])∧(i7628[8]* i7628[9]))


(9) -> (10), if ((i58[9]* i58[10])∧(i7628[9] > 0 && i7628[9] < i2[9] && i7630[9] > 0 && i7628[9] + 1 > 0* TRUE)∧((i2[9]* i2[10])∧(a19203data[9]* a19203data[10]))∧(i7628[9]* i7628[10])∧(i7630[9]* i7630[10]))


(10) -> (3), if ((i58[10]* i58[3])∧(i7628[10] + 1* i7628[3])∧((i2[10]* i2[3])∧(a19203data[10]* a19203data[3]))∧(i7630[10] + -1* 0))


(10) -> (8), if ((i7630[10] + -1* i7630[8])∧((i2[10]* i2[8])∧(a19203data[10]* a19203data[8]))∧(i58[10]* i58[8])∧(i7628[10] + 1* i7628[8]))


(10) -> (12), if ((i58[10]* i58[12])∧((i2[10]* i2[12])∧(a19203data[10]* a19203data[12]))∧(i7630[10] + -1* i7630[12])∧(i7628[10] + 1* i7628[12]))


(10) -> (15), if (((i2[10]* i2[15])∧(a19203data[10]* a19203data[15]))∧(i7630[10] + -1* i7630[15])∧(i7628[10] + 1* i7628[15])∧(i58[10]* i58[15]))


(10) -> (19), if ((i58[10]* i58[19])∧((i2[10]* i2[19])∧(a19203data[10]* a19203data[19]))∧(i7630[10] + -1* i7630[19])∧(i7628[10] + 1* i7628[19]))


(10) -> (23), if ((i7630[10] + -1* i7630[23])∧(i58[10]* i58[23])∧((i2[10]* i2[23])∧(a19203data[10]* a19203data[23]))∧(i7628[10] + 1* i7628[23]))


(10) -> (26), if (((i2[10]* i2[26])∧(a19203data[10]* a19203data[26]))∧(i7628[10] + 1* i7628[26])∧(i7630[10] + -1* i7630[26])∧(i58[10]* i58[26]))


(10) -> (29), if ((i7630[10] + -1* i7630[29])∧((i2[10]* i2[29])∧(a19203data[10]* a19203data[29]))∧(i7628[10] + 1* i7628[29])∧(i58[10]* i58[29]))


(10) -> (32), if ((i7630[10] + -1* i7630[32])∧(i58[10]* i58[32])∧((i2[10]* i2[32])∧(a19203data[10]* a19203data[32]))∧(i7628[10] + 1* i7628[32]))


(11) -> (3), if ((i8902[11]* i7628[3])∧(i7630[11] + -1* 0)∧((i2[11]* i2[3])∧(a19203data[11]* a19203data[3]))∧(i58[11]* i58[3]))


(11) -> (8), if ((i8902[11]* i7628[8])∧((i2[11]* i2[8])∧(a19203data[11]* a19203data[8]))∧(i7630[11] + -1* i7630[8])∧(i58[11]* i58[8]))


(11) -> (12), if ((i58[11]* i58[12])∧(i8902[11]* i7628[12])∧(i7630[11] + -1* i7630[12])∧((i2[11]* i2[12])∧(a19203data[11]* a19203data[12])))


(11) -> (15), if ((i8902[11]* i7628[15])∧(i7630[11] + -1* i7630[15])∧((i2[11]* i2[15])∧(a19203data[11]* a19203data[15]))∧(i58[11]* i58[15]))


(11) -> (19), if ((i8902[11]* i7628[19])∧((i2[11]* i2[19])∧(a19203data[11]* a19203data[19]))∧(i7630[11] + -1* i7630[19])∧(i58[11]* i58[19]))


(11) -> (23), if ((i8902[11]* i7628[23])∧(i58[11]* i58[23])∧((i2[11]* i2[23])∧(a19203data[11]* a19203data[23]))∧(i7630[11] + -1* i7630[23]))


(11) -> (26), if ((i58[11]* i58[26])∧((i2[11]* i2[26])∧(a19203data[11]* a19203data[26]))∧(i8902[11]* i7628[26])∧(i7630[11] + -1* i7630[26]))


(11) -> (29), if ((i7630[11] + -1* i7630[29])∧(i8902[11]* i7628[29])∧(i58[11]* i58[29])∧((i2[11]* i2[29])∧(a19203data[11]* a19203data[29])))


(11) -> (32), if ((i8902[11]* i7628[32])∧(i58[11]* i58[32])∧((i2[11]* i2[32])∧(a19203data[11]* a19203data[32]))∧(i7630[11] + -1* i7630[32]))


(12) -> (13), if ((i7630[12]* i7630[13])∧(i58[12]* i58[13])∧(i7628[12]* i7628[13])∧((i2[12]* i2[13])∧(a19203data[12]* a19203data[13])))


(13) -> (14), if ((i7628[13]* i7628[14])∧((i2[13]* i2[14])∧(a19203data[13]* a19203data[14]))∧(i7628[13] + 1 > 0 && i7628[13] + 1 < i2[13] && i7628[13] > 0 && i7628[13] < i2[13] && i7630[13] > 0 && i7628[13] + 1 + 1 > 0* TRUE)∧(i7630[13]* i7630[14])∧(i58[13]* i58[14]))


(14) -> (3), if (((i2[14]* i2[3])∧(a19203data[14]* a19203data[3]))∧(i7628[14] + 1 + 1* i7628[3])∧(i7630[14] + -1* 0)∧(i58[14]* i58[3]))


(14) -> (8), if ((i7630[14] + -1* i7630[8])∧(i7628[14] + 1 + 1* i7628[8])∧((i2[14]* i2[8])∧(a19203data[14]* a19203data[8]))∧(i58[14]* i58[8]))


(14) -> (12), if ((i7630[14] + -1* i7630[12])∧((i2[14]* i2[12])∧(a19203data[14]* a19203data[12]))∧(i7628[14] + 1 + 1* i7628[12])∧(i58[14]* i58[12]))


(14) -> (15), if ((i58[14]* i58[15])∧(i7628[14] + 1 + 1* i7628[15])∧((i2[14]* i2[15])∧(a19203data[14]* a19203data[15]))∧(i7630[14] + -1* i7630[15]))


(14) -> (19), if ((i7628[14] + 1 + 1* i7628[19])∧((i2[14]* i2[19])∧(a19203data[14]* a19203data[19]))∧(i7630[14] + -1* i7630[19])∧(i58[14]* i58[19]))


(14) -> (23), if (((i2[14]* i2[23])∧(a19203data[14]* a19203data[23]))∧(i7628[14] + 1 + 1* i7628[23])∧(i7630[14] + -1* i7630[23])∧(i58[14]* i58[23]))


(14) -> (26), if ((i58[14]* i58[26])∧(i7628[14] + 1 + 1* i7628[26])∧((i2[14]* i2[26])∧(a19203data[14]* a19203data[26]))∧(i7630[14] + -1* i7630[26]))


(14) -> (29), if ((i7630[14] + -1* i7630[29])∧((i2[14]* i2[29])∧(a19203data[14]* a19203data[29]))∧(i58[14]* i58[29])∧(i7628[14] + 1 + 1* i7628[29]))


(14) -> (32), if (((i2[14]* i2[32])∧(a19203data[14]* a19203data[32]))∧(i58[14]* i58[32])∧(i7630[14] + -1* i7630[32])∧(i7628[14] + 1 + 1* i7628[32]))


(15) -> (16), if ((i58[15]* i58[16])∧(i7628[15]* i7628[16])∧((i2[15]* i2[16])∧(a19203data[15]* a19203data[16]))∧(i7630[15]* i7630[16]))


(16) -> (17), if (((i2[16]* i2[17])∧(a19203data[16]* a19203data[17]))∧(i7628[16]* i7628[17])∧(i7630[16]* i7630[17])∧(i58[16]* i58[17])∧(i7628[16] > 0 && i7628[16] < i2[16] && i7630[16] > 0 && i7628[16] + 1 > 0* TRUE))


(17) -> (7), if ((i7630[17]* i7630[7])∧(i7628[17] + 1* i7710[7])∧(i58[17]* i58[7])∧((i2[17]* i2[7])∧(a19203data[17]* a19203data[7])))


(18) -> (7), if ((i7710[18]* i7710[7])∧((i2[18]* i2[7])∧(a19203data[18]* a19203data[7]))∧(i58[18]* i58[7])∧(i7630[18]* i7630[7]))


(19) -> (20), if ((i58[19]* i58[20])∧((i2[19]* i2[20])∧(a19203data[19]* a19203data[20]))∧(i7630[19]* i7630[20])∧((i7996[19]* i7996[20])∧(i7860[19]* i7860[20])∧(i7862[19]* i7862[20])∧(a19737[19]* a19737[20]))∧(i7628[19]* i7628[20]))


(20) -> (21), if ((i7630[20]* i7630[21])∧(i7628[20]* i7628[21])∧((i2[20]* i2[21])∧(a19203data[20]* a19203data[21]))∧(i58[20]* i58[21])∧(i7996[20] > 0 && i7628[20] > 0 && i7628[20] < i2[20] && i7630[20] > 0 && i7628[20] + 1 > 0* TRUE)∧((i7996[20]* i7996[21])∧(i7860[20]* i7860[21])∧(i7862[20]* i7862[21])∧(a19737[20]* a19737[21])))


(21) -> (7), if (((i2[21]* i2[7])∧(a19203data[21]* a19203data[7]))∧(i7628[21] + 1* i7710[7])∧(i58[21]* i58[7])∧(i7630[21]* i7630[7]))


(22) -> (11), if ((i58[22]* i58[11])∧((i2[22]* i2[11])∧(a19203data[22]* a19203data[11]))∧(i8946[22]* i8902[11])∧(i7630[22]* i7630[11]))


(23) -> (24), if ((i7630[23]* i7630[24])∧((i2[23]* i2[24])∧(a19203data[23]* a19203data[24]))∧(i58[23]* i58[24])∧((i7996[23]* i7996[24])∧(i7860[23]* i7860[24])∧(i7862[23]* i7862[24])∧(a19737[23]* a19737[24]))∧(i7628[23]* i7628[24]))


(24) -> (25), if ((i58[24]* i58[25])∧((i7996[24]* i7996[25])∧(i7860[24]* i7860[25])∧(i7862[24]* i7862[25])∧(a19737[24]* a19737[25]))∧((i2[24]* i2[25])∧(a19203data[24]* a19203data[25]))∧(i7628[24]* i7628[25])∧(i7628[24] + 1 > 0 && i7628[24] + 1 < i2[24] && i7996[24] > 0 && i7628[24] > 0 && i7628[24] < i2[24] && i7630[24] > 0 && i7628[24] + 1 + 1 > 0* TRUE)∧(i7630[24]* i7630[25]))


(25) -> (11), if ((i7630[25]* i7630[11])∧((i2[25]* i2[11])∧(a19203data[25]* a19203data[11]))∧(i7628[25] + 1 + 1* i8902[11])∧(i58[25]* i58[11]))


(26) -> (27), if (((i2[26]* i2[27])∧(a19203data[26]* a19203data[27]))∧(i7628[26]* i7628[27])∧(i7630[26]* i7630[27])∧(i58[26]* i58[27]))


(27) -> (28), if ((i7628[27]* i7628[28])∧(i7630[27]* i7630[28])∧(i58[27]* i58[28])∧((i2[27]* i2[28])∧(a19203data[27]* a19203data[28]))∧(i7628[27] + 1 > 0 && i7628[27] + 1 < i2[27] && i7628[27] > 0 && i7628[27] < i2[27] && i7630[27] > 0 && i7628[27] + 1 + 1 > 0* TRUE))


(28) -> (11), if ((i58[28]* i58[11])∧(i7628[28] + 1 + 1* i8902[11])∧((i2[28]* i2[11])∧(a19203data[28]* a19203data[11]))∧(i7630[28]* i7630[11]))


(29) -> (30), if (((i2[29]* i2[30])∧(a19203data[29]* a19203data[30]))∧(i7630[29]* i7630[30])∧(i7628[29]* i7628[30])∧(i58[29]* i58[30])∧((i7996[29]* i7996[30])∧(i7860[29]* i7860[30])∧(i7862[29]* i7862[30])∧(a19737[29]* a19737[30])))


(30) -> (31), if ((i58[30]* i58[31])∧(i7628[30]* i7628[31])∧((i2[30]* i2[31])∧(a19203data[30]* a19203data[31]))∧(i7996[30] > 0 && i7628[30] > 0 && i7628[30] < i2[30] && i7630[30] > 0 && i7628[30] + 1 > 0* TRUE)∧((i7996[30]* i7996[31])∧(i7860[30]* i7860[31])∧(i7862[30]* i7862[31])∧(a19737[30]* a19737[31]))∧(i7630[30]* i7630[31]))


(31) -> (18), if ((i58[31]* i58[18])∧((i2[31]* i2[18])∧(a19203data[31]* a19203data[18]))∧(i7630[31]* i7630[18])∧(i7628[31] + 1* i7710[18]))


(32) -> (33), if (((i7996[32]* i7996[33])∧(i7860[32]* i7860[33])∧(i7862[32]* i7862[33])∧(a19737[32]* a19737[33]))∧(i58[32]* i58[33])∧((i2[32]* i2[33])∧(a19203data[32]* a19203data[33]))∧(i7628[32]* i7628[33])∧(i7630[32]* i7630[33]))


(33) -> (34), if ((i7628[33]* i7628[34])∧((i2[33]* i2[34])∧(a19203data[33]* a19203data[34]))∧(i7628[33] + 1 > 0 && i7628[33] + 1 < i2[33] && i7996[33] > 0 && i7628[33] > 0 && i7628[33] < i2[33] && i7630[33] > 0 && i7628[33] + 1 + 1 > 0* TRUE)∧((i7996[33]* i7996[34])∧(i7860[33]* i7860[34])∧(i7862[33]* i7862[34])∧(a19737[33]* a19737[34]))∧(i58[33]* i58[34])∧(i7630[33]* i7630[34]))


(34) -> (22), if ((i7630[34]* i7630[22])∧(i7628[34] + 1 + 1* i8946[22])∧(i58[34]* i58[22])∧((i2[34]* i2[22])∧(a19203data[34]* a19203data[22])))



The set Q consists of the following terms:
Load715(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR1(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Cond_Load715ARR1(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR2(java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)))
Cond_Load715ARR2(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)))
Inc15077(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR3(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR3(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Inc18978(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR4(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR4(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR5(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR5(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
JMP15126(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR6(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR6(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
JMP18886(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR7(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR7(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Load13603ARR8(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR8(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR9(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR9(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Load13603ARR10(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR10(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))

(27) IDPNonInfProof (SOUND transformation)

The constraints were generated the following way:
The DP Problem is simplified using the Induction Calculus [NONINF] with the following steps:
Note that final constraints are written in bold face.


For Pair LOAD715(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → LOAD715ARR1(java.lang.Object(ARRAY(i2, a694data)), i56, i58) the following chains were created:
  • We consider the chain LOAD715(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0]) → LOAD715ARR1(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0]), LOAD715ARR1(java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1]) → COND_LOAD715ARR1(&&(&&(&&(>(i56[1], 0), <(i56[1], i2[1])), >(i58[1], 0)), >(+(i56[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1]) which results in the following constraint:

    (1)    (i58[0]=i58[1]i56[0]=i56[1]i2[0]=i2[1]a694data[0]=a694data[1]LOAD715(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])≥NonInfC∧LOAD715(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])≥LOAD715ARR1(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])∧(UIncreasing(LOAD715ARR1(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])), ≥))



    We simplified constraint (1) using rule (IV) which results in the following new constraint:

    (2)    (LOAD715(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])≥NonInfC∧LOAD715(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])≥LOAD715ARR1(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])∧(UIncreasing(LOAD715ARR1(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])), ≥))



    We simplified constraint (2) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (3)    ((UIncreasing(LOAD715ARR1(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])), ≥)∧[(-1)bso_51] ≥ 0)



    We simplified constraint (3) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (4)    ((UIncreasing(LOAD715ARR1(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])), ≥)∧[(-1)bso_51] ≥ 0)



    We simplified constraint (4) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (5)    ((UIncreasing(LOAD715ARR1(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])), ≥)∧[(-1)bso_51] ≥ 0)



    We simplified constraint (5) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (6)    ((UIncreasing(LOAD715ARR1(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_51] ≥ 0)







For Pair LOAD715ARR1(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → COND_LOAD715ARR1(&&(&&(&&(>(i56, 0), <(i56, i2)), >(i58, 0)), >(+(i56, 1), 0)), java.lang.Object(ARRAY(i2, a694data)), i56, i58) the following chains were created:
  • We consider the chain LOAD715ARR1(java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1]) → COND_LOAD715ARR1(&&(&&(&&(>(i56[1], 0), <(i56[1], i2[1])), >(i58[1], 0)), >(+(i56[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1]), COND_LOAD715ARR1(TRUE, java.lang.Object(ARRAY(i2[2], a694data[2])), i56[2], i58[2]) → LOAD715(java.lang.Object(ARRAY(i2[2], a694data[2])), +(i56[2], 1), +(i58[2], -1)) which results in the following constraint:

    (7)    (&&(&&(&&(>(i56[1], 0), <(i56[1], i2[1])), >(i58[1], 0)), >(+(i56[1], 1), 0))=TRUEi2[1]=i2[2]a694data[1]=a694data[2]i58[1]=i58[2]i56[1]=i56[2]LOAD715ARR1(java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])≥NonInfC∧LOAD715ARR1(java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])≥COND_LOAD715ARR1(&&(&&(&&(>(i56[1], 0), <(i56[1], i2[1])), >(i58[1], 0)), >(+(i56[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])∧(UIncreasing(COND_LOAD715ARR1(&&(&&(&&(>(i56[1], 0), <(i56[1], i2[1])), >(i58[1], 0)), >(+(i56[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])), ≥))



    We simplified constraint (7) using rules (IV), (IDP_BOOLEAN) which results in the following new constraint:

    (8)    (>(+(i56[1], 1), 0)=TRUE>(i58[1], 0)=TRUE>(i56[1], 0)=TRUE<(i56[1], i2[1])=TRUELOAD715ARR1(java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])≥NonInfC∧LOAD715ARR1(java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])≥COND_LOAD715ARR1(&&(&&(&&(>(i56[1], 0), <(i56[1], i2[1])), >(i58[1], 0)), >(+(i56[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])∧(UIncreasing(COND_LOAD715ARR1(&&(&&(&&(>(i56[1], 0), <(i56[1], i2[1])), >(i58[1], 0)), >(+(i56[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])), ≥))



    We simplified constraint (8) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (9)    (i56[1] ≥ 0∧i58[1] + [-1] ≥ 0∧i56[1] + [-1] ≥ 0∧i2[1] + [-1] + [-1]i56[1] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR1(&&(&&(&&(>(i56[1], 0), <(i56[1], i2[1])), >(i58[1], 0)), >(+(i56[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])), ≥)∧[(-1)Bound*bni_52] + [bni_52]i58[1] + [(-1)bni_52]i56[1] + [bni_52]i2[1] ≥ 0∧[(-1)bso_53] ≥ 0)



    We simplified constraint (9) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (10)    (i56[1] ≥ 0∧i58[1] + [-1] ≥ 0∧i56[1] + [-1] ≥ 0∧i2[1] + [-1] + [-1]i56[1] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR1(&&(&&(&&(>(i56[1], 0), <(i56[1], i2[1])), >(i58[1], 0)), >(+(i56[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])), ≥)∧[(-1)Bound*bni_52] + [bni_52]i58[1] + [(-1)bni_52]i56[1] + [bni_52]i2[1] ≥ 0∧[(-1)bso_53] ≥ 0)



    We simplified constraint (10) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (11)    (i56[1] ≥ 0∧i58[1] + [-1] ≥ 0∧i56[1] + [-1] ≥ 0∧i2[1] + [-1] + [-1]i56[1] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR1(&&(&&(&&(>(i56[1], 0), <(i56[1], i2[1])), >(i58[1], 0)), >(+(i56[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])), ≥)∧[(-1)Bound*bni_52] + [bni_52]i58[1] + [(-1)bni_52]i56[1] + [bni_52]i2[1] ≥ 0∧[(-1)bso_53] ≥ 0)



    We simplified constraint (11) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (12)    (i56[1] ≥ 0∧i58[1] + [-1] ≥ 0∧i56[1] + [-1] ≥ 0∧i2[1] + [-1] + [-1]i56[1] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR1(&&(&&(&&(>(i56[1], 0), <(i56[1], i2[1])), >(i58[1], 0)), >(+(i56[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])), ≥)∧0 = 0∧[(-1)Bound*bni_52] + [bni_52]i58[1] + [(-1)bni_52]i56[1] + [bni_52]i2[1] ≥ 0∧0 = 0∧[(-1)bso_53] ≥ 0)



    We simplified constraint (12) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (13)    ([1] + i56[1] ≥ 0∧i58[1] + [-1] ≥ 0∧i56[1] ≥ 0∧i2[1] + [-2] + [-1]i56[1] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR1(&&(&&(&&(>(i56[1], 0), <(i56[1], i2[1])), >(i58[1], 0)), >(+(i56[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])), ≥)∧0 = 0∧[(-1)Bound*bni_52 + (-1)bni_52] + [bni_52]i58[1] + [(-1)bni_52]i56[1] + [bni_52]i2[1] ≥ 0∧0 = 0∧[(-1)bso_53] ≥ 0)



    We simplified constraint (13) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (14)    ([1] + i56[1] ≥ 0∧i58[1] ≥ 0∧i56[1] ≥ 0∧i2[1] + [-2] + [-1]i56[1] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR1(&&(&&(&&(>(i56[1], 0), <(i56[1], i2[1])), >(i58[1], 0)), >(+(i56[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])), ≥)∧0 = 0∧[(-1)Bound*bni_52] + [bni_52]i58[1] + [(-1)bni_52]i56[1] + [bni_52]i2[1] ≥ 0∧0 = 0∧[(-1)bso_53] ≥ 0)



    We simplified constraint (14) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (15)    ([1] + i56[1] ≥ 0∧i58[1] ≥ 0∧i56[1] ≥ 0∧i2[1] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR1(&&(&&(&&(>(i56[1], 0), <(i56[1], i2[1])), >(i58[1], 0)), >(+(i56[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])), ≥)∧0 = 0∧[(-1)Bound*bni_52 + (2)bni_52] + [bni_52]i58[1] + [bni_52]i2[1] ≥ 0∧0 = 0∧[(-1)bso_53] ≥ 0)







For Pair COND_LOAD715ARR1(TRUE, java.lang.Object(ARRAY(i2, a694data)), i56, i58) → LOAD715(java.lang.Object(ARRAY(i2, a694data)), +(i56, 1), +(i58, -1)) the following chains were created:
  • We consider the chain COND_LOAD715ARR1(TRUE, java.lang.Object(ARRAY(i2[2], a694data[2])), i56[2], i58[2]) → LOAD715(java.lang.Object(ARRAY(i2[2], a694data[2])), +(i56[2], 1), +(i58[2], -1)) which results in the following constraint:

    (16)    (COND_LOAD715ARR1(TRUE, java.lang.Object(ARRAY(i2[2], a694data[2])), i56[2], i58[2])≥NonInfC∧COND_LOAD715ARR1(TRUE, java.lang.Object(ARRAY(i2[2], a694data[2])), i56[2], i58[2])≥LOAD715(java.lang.Object(ARRAY(i2[2], a694data[2])), +(i56[2], 1), +(i58[2], -1))∧(UIncreasing(LOAD715(java.lang.Object(ARRAY(i2[2], a694data[2])), +(i56[2], 1), +(i58[2], -1))), ≥))



    We simplified constraint (16) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (17)    ((UIncreasing(LOAD715(java.lang.Object(ARRAY(i2[2], a694data[2])), +(i56[2], 1), +(i58[2], -1))), ≥)∧[2 + (-1)bso_55] ≥ 0)



    We simplified constraint (17) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (18)    ((UIncreasing(LOAD715(java.lang.Object(ARRAY(i2[2], a694data[2])), +(i56[2], 1), +(i58[2], -1))), ≥)∧[2 + (-1)bso_55] ≥ 0)



    We simplified constraint (18) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (19)    ((UIncreasing(LOAD715(java.lang.Object(ARRAY(i2[2], a694data[2])), +(i56[2], 1), +(i58[2], -1))), ≥)∧[2 + (-1)bso_55] ≥ 0)



    We simplified constraint (19) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (20)    ((UIncreasing(LOAD715(java.lang.Object(ARRAY(i2[2], a694data[2])), +(i56[2], 1), +(i58[2], -1))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[2 + (-1)bso_55] ≥ 0)







For Pair LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, 0) → LOAD715(java.lang.Object(ARRAY(i2, a19203data)), i7628, +(i58, -1)) the following chains were created:
  • We consider the chain LOAD13603(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], i58[3], 0) → LOAD715(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], +(i58[3], -1)) which results in the following constraint:

    (21)    (LOAD13603(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], i58[3], 0)≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], i58[3], 0)≥LOAD715(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], +(i58[3], -1))∧(UIncreasing(LOAD715(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], +(i58[3], -1))), ≥))



    We simplified constraint (21) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (22)    ((UIncreasing(LOAD715(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], +(i58[3], -1))), ≥)∧[1 + (-1)bso_57] ≥ 0)



    We simplified constraint (22) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (23)    ((UIncreasing(LOAD715(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], +(i58[3], -1))), ≥)∧[1 + (-1)bso_57] ≥ 0)



    We simplified constraint (23) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (24)    ((UIncreasing(LOAD715(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], +(i58[3], -1))), ≥)∧[1 + (-1)bso_57] ≥ 0)



    We simplified constraint (24) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (25)    ((UIncreasing(LOAD715(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], +(i58[3], -1))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_57] ≥ 0)







For Pair LOAD715(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → LOAD715ARR2(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823))) the following chains were created:
  • We consider the chain LOAD715(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4]) → LOAD715ARR2(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4], java.lang.Object(java.lang.String(i109[4], i86[4], i88[4], a823[4]))) which results in the following constraint:

    (26)    (LOAD715(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4])≥NonInfC∧LOAD715(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4])≥LOAD715ARR2(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4], java.lang.Object(java.lang.String(i109[4], i86[4], i88[4], a823[4])))∧(UIncreasing(LOAD715ARR2(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4], java.lang.Object(java.lang.String(i109[4], i86[4], i88[4], a823[4])))), ≥))



    We simplified constraint (26) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (27)    ((UIncreasing(LOAD715ARR2(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4], java.lang.Object(java.lang.String(i109[4], i86[4], i88[4], a823[4])))), ≥)∧[1 + (-1)bso_59] ≥ 0)



    We simplified constraint (27) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (28)    ((UIncreasing(LOAD715ARR2(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4], java.lang.Object(java.lang.String(i109[4], i86[4], i88[4], a823[4])))), ≥)∧[1 + (-1)bso_59] ≥ 0)



    We simplified constraint (28) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (29)    ((UIncreasing(LOAD715ARR2(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4], java.lang.Object(java.lang.String(i109[4], i86[4], i88[4], a823[4])))), ≥)∧[1 + (-1)bso_59] ≥ 0)



    We simplified constraint (29) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (30)    ((UIncreasing(LOAD715ARR2(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4], java.lang.Object(java.lang.String(i109[4], i86[4], i88[4], a823[4])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_59] ≥ 0)







For Pair LOAD715ARR2(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823))) → COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56, 1), 0), <(+(i56, 1), i2)), >(i109, 0)), >(i56, 0)), <(i56, i2)), >(i58, 0)), >(+(+(i56, 1), 1), 0)), java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823))) the following chains were created:
  • We consider the chain LOAD715ARR2(java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5]))) → COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0)), java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5]))), COND_LOAD715ARR2(TRUE, java.lang.Object(ARRAY(i2[6], a694data[6])), i56[6], i58[6], java.lang.Object(java.lang.String(i109[6], i86[6], i88[6], a823[6]))) → LOAD13603(java.lang.Object(ARRAY(i2[6], a694data[6])), +(+(i56[6], 1), 1), i58[6], i109[6]) which results in the following constraint:

    (31)    (&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0))=TRUEi58[5]=i58[6]i109[5]=i109[6]i86[5]=i86[6]i88[5]=i88[6]a823[5]=a823[6]i56[5]=i56[6]i2[5]=i2[6]a694data[5]=a694data[6]LOAD715ARR2(java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))≥NonInfC∧LOAD715ARR2(java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))≥COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0)), java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))∧(UIncreasing(COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0)), java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))), ≥))



    We simplified constraint (31) using rules (IV), (IDP_BOOLEAN) which results in the following new constraint:

    (32)    (>(+(+(i56[5], 1), 1), 0)=TRUE>(i58[5], 0)=TRUE<(i56[5], i2[5])=TRUE>(i56[5], 0)=TRUE>(i109[5], 0)=TRUE>(+(i56[5], 1), 0)=TRUE<(+(i56[5], 1), i2[5])=TRUELOAD715ARR2(java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))≥NonInfC∧LOAD715ARR2(java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))≥COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0)), java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))∧(UIncreasing(COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0)), java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))), ≥))



    We simplified constraint (32) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (33)    (i56[5] + [1] ≥ 0∧i58[5] + [-1] ≥ 0∧i2[5] + [-1] + [-1]i56[5] ≥ 0∧i56[5] + [-1] ≥ 0∧i109[5] + [-1] ≥ 0∧i56[5] ≥ 0∧i2[5] + [-2] + [-1]i56[5] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0)), java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))), ≥)∧[(-1)bni_60 + (-1)Bound*bni_60] + [bni_60]i58[5] + [(-1)bni_60]i56[5] + [bni_60]i2[5] ≥ 0∧[(-1)bso_61] ≥ 0)



    We simplified constraint (33) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (34)    (i56[5] + [1] ≥ 0∧i58[5] + [-1] ≥ 0∧i2[5] + [-1] + [-1]i56[5] ≥ 0∧i56[5] + [-1] ≥ 0∧i109[5] + [-1] ≥ 0∧i56[5] ≥ 0∧i2[5] + [-2] + [-1]i56[5] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0)), java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))), ≥)∧[(-1)bni_60 + (-1)Bound*bni_60] + [bni_60]i58[5] + [(-1)bni_60]i56[5] + [bni_60]i2[5] ≥ 0∧[(-1)bso_61] ≥ 0)



    We simplified constraint (34) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (35)    (i56[5] + [1] ≥ 0∧i58[5] + [-1] ≥ 0∧i2[5] + [-1] + [-1]i56[5] ≥ 0∧i56[5] + [-1] ≥ 0∧i109[5] + [-1] ≥ 0∧i56[5] ≥ 0∧i2[5] + [-2] + [-1]i56[5] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0)), java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))), ≥)∧[(-1)bni_60 + (-1)Bound*bni_60] + [bni_60]i58[5] + [(-1)bni_60]i56[5] + [bni_60]i2[5] ≥ 0∧[(-1)bso_61] ≥ 0)



    We simplified constraint (35) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (36)    (i56[5] + [1] ≥ 0∧i58[5] + [-1] ≥ 0∧i2[5] + [-1] + [-1]i56[5] ≥ 0∧i56[5] + [-1] ≥ 0∧i109[5] + [-1] ≥ 0∧i56[5] ≥ 0∧i2[5] + [-2] + [-1]i56[5] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0)), java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bni_60 + (-1)Bound*bni_60] + [bni_60]i58[5] + [(-1)bni_60]i56[5] + [bni_60]i2[5] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_61] ≥ 0)



    We simplified constraint (36) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (37)    ([2] + i56[5] ≥ 0∧i58[5] + [-1] ≥ 0∧i2[5] + [-2] + [-1]i56[5] ≥ 0∧i56[5] ≥ 0∧i109[5] + [-1] ≥ 0∧[1] + i56[5] ≥ 0∧i2[5] + [-3] + [-1]i56[5] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0)), java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-2)bni_60 + (-1)Bound*bni_60] + [bni_60]i58[5] + [(-1)bni_60]i56[5] + [bni_60]i2[5] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_61] ≥ 0)



    We simplified constraint (37) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (38)    ([2] + i56[5] ≥ 0∧i58[5] ≥ 0∧i2[5] + [-2] + [-1]i56[5] ≥ 0∧i56[5] ≥ 0∧i109[5] + [-1] ≥ 0∧[1] + i56[5] ≥ 0∧i2[5] + [-3] + [-1]i56[5] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0)), java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_60 + (-1)bni_60] + [bni_60]i58[5] + [(-1)bni_60]i56[5] + [bni_60]i2[5] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_61] ≥ 0)



    We simplified constraint (38) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (39)    ([2] + i56[5] ≥ 0∧i58[5] ≥ 0∧i2[5] ≥ 0∧i56[5] ≥ 0∧i109[5] + [-1] ≥ 0∧[1] + i56[5] ≥ 0∧[-1] + i2[5] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0)), java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_60 + bni_60] + [bni_60]i58[5] + [bni_60]i2[5] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_61] ≥ 0)



    We simplified constraint (39) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (40)    ([2] + i56[5] ≥ 0∧i58[5] ≥ 0∧[1] + i2[5] ≥ 0∧i56[5] ≥ 0∧i109[5] + [-1] ≥ 0∧[1] + i56[5] ≥ 0∧i2[5] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0)), java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_60 + (2)bni_60] + [bni_60]i58[5] + [bni_60]i2[5] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_61] ≥ 0)



    We simplified constraint (40) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (41)    ([2] + i56[5] ≥ 0∧i58[5] ≥ 0∧[1] + i2[5] ≥ 0∧i56[5] ≥ 0∧i109[5] ≥ 0∧[1] + i56[5] ≥ 0∧i2[5] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0)), java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_60 + (2)bni_60] + [bni_60]i58[5] + [bni_60]i2[5] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_61] ≥ 0)







For Pair COND_LOAD715ARR2(TRUE, java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823))) → LOAD13603(java.lang.Object(ARRAY(i2, a694data)), +(+(i56, 1), 1), i58, i109) the following chains were created:
  • We consider the chain COND_LOAD715ARR2(TRUE, java.lang.Object(ARRAY(i2[6], a694data[6])), i56[6], i58[6], java.lang.Object(java.lang.String(i109[6], i86[6], i88[6], a823[6]))) → LOAD13603(java.lang.Object(ARRAY(i2[6], a694data[6])), +(+(i56[6], 1), 1), i58[6], i109[6]) which results in the following constraint:

    (42)    (COND_LOAD715ARR2(TRUE, java.lang.Object(ARRAY(i2[6], a694data[6])), i56[6], i58[6], java.lang.Object(java.lang.String(i109[6], i86[6], i88[6], a823[6])))≥NonInfC∧COND_LOAD715ARR2(TRUE, java.lang.Object(ARRAY(i2[6], a694data[6])), i56[6], i58[6], java.lang.Object(java.lang.String(i109[6], i86[6], i88[6], a823[6])))≥LOAD13603(java.lang.Object(ARRAY(i2[6], a694data[6])), +(+(i56[6], 1), 1), i58[6], i109[6])∧(UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[6], a694data[6])), +(+(i56[6], 1), 1), i58[6], i109[6])), ≥))



    We simplified constraint (42) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (43)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[6], a694data[6])), +(+(i56[6], 1), 1), i58[6], i109[6])), ≥)∧[1 + (-1)bso_63] ≥ 0)



    We simplified constraint (43) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (44)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[6], a694data[6])), +(+(i56[6], 1), 1), i58[6], i109[6])), ≥)∧[1 + (-1)bso_63] ≥ 0)



    We simplified constraint (44) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (45)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[6], a694data[6])), +(+(i56[6], 1), 1), i58[6], i109[6])), ≥)∧[1 + (-1)bso_63] ≥ 0)



    We simplified constraint (45) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (46)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[6], a694data[6])), +(+(i56[6], 1), 1), i58[6], i109[6])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_63] ≥ 0)







For Pair INC15077(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630) → LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, +(i7630, -1)) the following chains were created:
  • We consider the chain INC15077(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7]) → LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], +(i7630[7], -1)) which results in the following constraint:

    (47)    (INC15077(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7])≥NonInfC∧INC15077(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7])≥LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], +(i7630[7], -1))∧(UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], +(i7630[7], -1))), ≥))



    We simplified constraint (47) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (48)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], +(i7630[7], -1))), ≥)∧[(-1)bso_65] ≥ 0)



    We simplified constraint (48) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (49)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], +(i7630[7], -1))), ≥)∧[(-1)bso_65] ≥ 0)



    We simplified constraint (49) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (50)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], +(i7630[7], -1))), ≥)∧[(-1)bso_65] ≥ 0)



    We simplified constraint (50) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (51)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], +(i7630[7], -1))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_65] ≥ 0)







For Pair LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → LOAD13603ARR3(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) the following chains were created:
  • We consider the chain LOAD13603(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8]) → LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8]), LOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9]) → COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9]) which results in the following constraint:

    (52)    (i2[8]=i2[9]a19203data[8]=a19203data[9]i58[8]=i58[9]i7630[8]=i7630[9]i7628[8]=i7628[9]LOAD13603(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])≥LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])∧(UIncreasing(LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])), ≥))



    We simplified constraint (52) using rule (IV) which results in the following new constraint:

    (53)    (LOAD13603(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])≥LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])∧(UIncreasing(LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])), ≥))



    We simplified constraint (53) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (54)    ((UIncreasing(LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])), ≥)∧[(-1)bso_67] ≥ 0)



    We simplified constraint (54) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (55)    ((UIncreasing(LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])), ≥)∧[(-1)bso_67] ≥ 0)



    We simplified constraint (55) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (56)    ((UIncreasing(LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])), ≥)∧[(-1)bso_67] ≥ 0)



    We simplified constraint (56) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (57)    ((UIncreasing(LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_67] ≥ 0)







For Pair LOAD13603ARR3(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → COND_LOAD13603ARR3(&&(&&(&&(>(i7628, 0), <(i7628, i2)), >(i7630, 0)), >(+(i7628, 1), 0)), java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) the following chains were created:
  • We consider the chain LOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9]) → COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9]), COND_LOAD13603ARR3(TRUE, java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10], i58[10], i7630[10]) → LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), +(i7628[10], 1), i58[10], +(i7630[10], -1)) which results in the following constraint:

    (58)    (i58[9]=i58[10]&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0))=TRUEi2[9]=i2[10]a19203data[9]=a19203data[10]i7628[9]=i7628[10]i7630[9]=i7630[10]LOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])≥NonInfC∧LOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])≥COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])∧(UIncreasing(COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])), ≥))



    We simplified constraint (58) using rules (IV), (IDP_BOOLEAN) which results in the following new constraint:

    (59)    (>(+(i7628[9], 1), 0)=TRUE>(i7630[9], 0)=TRUE>(i7628[9], 0)=TRUE<(i7628[9], i2[9])=TRUELOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])≥NonInfC∧LOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])≥COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])∧(UIncreasing(COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])), ≥))



    We simplified constraint (59) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (60)    (i7628[9] ≥ 0∧i7630[9] + [-1] ≥ 0∧i7628[9] + [-1] ≥ 0∧i2[9] + [-1] + [-1]i7628[9] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])), ≥)∧[(-1)Bound*bni_68] + [bni_68]i58[9] + [(-1)bni_68]i7628[9] + [bni_68]i2[9] ≥ 0∧[(-1)bso_69] ≥ 0)



    We simplified constraint (60) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (61)    (i7628[9] ≥ 0∧i7630[9] + [-1] ≥ 0∧i7628[9] + [-1] ≥ 0∧i2[9] + [-1] + [-1]i7628[9] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])), ≥)∧[(-1)Bound*bni_68] + [bni_68]i58[9] + [(-1)bni_68]i7628[9] + [bni_68]i2[9] ≥ 0∧[(-1)bso_69] ≥ 0)



    We simplified constraint (61) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (62)    (i7628[9] ≥ 0∧i7630[9] + [-1] ≥ 0∧i7628[9] + [-1] ≥ 0∧i2[9] + [-1] + [-1]i7628[9] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])), ≥)∧[(-1)Bound*bni_68] + [bni_68]i58[9] + [(-1)bni_68]i7628[9] + [bni_68]i2[9] ≥ 0∧[(-1)bso_69] ≥ 0)



    We simplified constraint (62) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (63)    (i7628[9] ≥ 0∧i7630[9] + [-1] ≥ 0∧i7628[9] + [-1] ≥ 0∧i2[9] + [-1] + [-1]i7628[9] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])), ≥)∧[bni_68] = 0∧0 = 0∧[(-1)Bound*bni_68] + [(-1)bni_68]i7628[9] + [bni_68]i2[9] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_69] ≥ 0)



    We simplified constraint (63) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (64)    ([1] + i7628[9] ≥ 0∧i7630[9] + [-1] ≥ 0∧i7628[9] ≥ 0∧i2[9] + [-2] + [-1]i7628[9] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])), ≥)∧[bni_68] = 0∧0 = 0∧[(-1)Bound*bni_68 + (-1)bni_68] + [(-1)bni_68]i7628[9] + [bni_68]i2[9] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_69] ≥ 0)



    We simplified constraint (64) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (65)    ([1] + i7628[9] ≥ 0∧i7630[9] ≥ 0∧i7628[9] ≥ 0∧i2[9] + [-2] + [-1]i7628[9] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])), ≥)∧[bni_68] = 0∧0 = 0∧[(-1)Bound*bni_68 + (-1)bni_68] + [(-1)bni_68]i7628[9] + [bni_68]i2[9] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_69] ≥ 0)



    We simplified constraint (65) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (66)    ([1] + i7628[9] ≥ 0∧i7630[9] ≥ 0∧i7628[9] ≥ 0∧i2[9] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])), ≥)∧[bni_68] = 0∧0 = 0∧[(-1)Bound*bni_68 + bni_68] + [bni_68]i2[9] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_69] ≥ 0)







For Pair COND_LOAD13603ARR3(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), +(i7628, 1), i58, +(i7630, -1)) the following chains were created:
  • We consider the chain COND_LOAD13603ARR3(TRUE, java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10], i58[10], i7630[10]) → LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), +(i7628[10], 1), i58[10], +(i7630[10], -1)) which results in the following constraint:

    (67)    (COND_LOAD13603ARR3(TRUE, java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10], i58[10], i7630[10])≥NonInfC∧COND_LOAD13603ARR3(TRUE, java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10], i58[10], i7630[10])≥LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), +(i7628[10], 1), i58[10], +(i7630[10], -1))∧(UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), +(i7628[10], 1), i58[10], +(i7630[10], -1))), ≥))



    We simplified constraint (67) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (68)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), +(i7628[10], 1), i58[10], +(i7630[10], -1))), ≥)∧[1 + (-1)bso_71] ≥ 0)



    We simplified constraint (68) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (69)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), +(i7628[10], 1), i58[10], +(i7630[10], -1))), ≥)∧[1 + (-1)bso_71] ≥ 0)



    We simplified constraint (69) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (70)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), +(i7628[10], 1), i58[10], +(i7630[10], -1))), ≥)∧[1 + (-1)bso_71] ≥ 0)



    We simplified constraint (70) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (71)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), +(i7628[10], 1), i58[10], +(i7630[10], -1))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_71] ≥ 0)







For Pair INC18978(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630) → LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, +(i7630, -1)) the following chains were created:
  • We consider the chain INC18978(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11]) → LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], +(i7630[11], -1)) which results in the following constraint:

    (72)    (INC18978(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11])≥NonInfC∧INC18978(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11])≥LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], +(i7630[11], -1))∧(UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], +(i7630[11], -1))), ≥))



    We simplified constraint (72) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (73)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], +(i7630[11], -1))), ≥)∧[(-1)bso_73] ≥ 0)



    We simplified constraint (73) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (74)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], +(i7630[11], -1))), ≥)∧[(-1)bso_73] ≥ 0)



    We simplified constraint (74) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (75)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], +(i7630[11], -1))), ≥)∧[(-1)bso_73] ≥ 0)



    We simplified constraint (75) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (76)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], +(i7630[11], -1))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_73] ≥ 0)







For Pair LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → LOAD13603ARR4(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) the following chains were created:
  • We consider the chain LOAD13603(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12]) → LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12]), LOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13]) → COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13]) which results in the following constraint:

    (77)    (i7630[12]=i7630[13]i58[12]=i58[13]i7628[12]=i7628[13]i2[12]=i2[13]a19203data[12]=a19203data[13]LOAD13603(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])≥LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])∧(UIncreasing(LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])), ≥))



    We simplified constraint (77) using rule (IV) which results in the following new constraint:

    (78)    (LOAD13603(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])≥LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])∧(UIncreasing(LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])), ≥))



    We simplified constraint (78) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (79)    ((UIncreasing(LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])), ≥)∧[(-1)bso_75] ≥ 0)



    We simplified constraint (79) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (80)    ((UIncreasing(LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])), ≥)∧[(-1)bso_75] ≥ 0)



    We simplified constraint (80) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (81)    ((UIncreasing(LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])), ≥)∧[(-1)bso_75] ≥ 0)



    We simplified constraint (81) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (82)    ((UIncreasing(LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_75] ≥ 0)







For Pair LOAD13603ARR4(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628, 1), 0), <(+(i7628, 1), i2)), >(i7628, 0)), <(i7628, i2)), >(i7630, 0)), >(+(+(i7628, 1), 1), 0)), java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) the following chains were created:
  • We consider the chain LOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13]) → COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13]), COND_LOAD13603ARR4(TRUE, java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14], i58[14], i7630[14]) → LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), +(+(i7628[14], 1), 1), i58[14], +(i7630[14], -1)) which results in the following constraint:

    (83)    (i7628[13]=i7628[14]i2[13]=i2[14]a19203data[13]=a19203data[14]&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0))=TRUEi7630[13]=i7630[14]i58[13]=i58[14]LOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])≥NonInfC∧LOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])≥COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])∧(UIncreasing(COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])), ≥))



    We simplified constraint (83) using rules (IV), (IDP_BOOLEAN) which results in the following new constraint:

    (84)    (>(+(+(i7628[13], 1), 1), 0)=TRUE>(i7630[13], 0)=TRUE<(i7628[13], i2[13])=TRUE>(i7628[13], 0)=TRUE>(+(i7628[13], 1), 0)=TRUE<(+(i7628[13], 1), i2[13])=TRUELOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])≥NonInfC∧LOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])≥COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])∧(UIncreasing(COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])), ≥))



    We simplified constraint (84) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (85)    (i7628[13] + [1] ≥ 0∧i7630[13] + [-1] ≥ 0∧i2[13] + [-1] + [-1]i7628[13] ≥ 0∧i7628[13] + [-1] ≥ 0∧i7628[13] ≥ 0∧i2[13] + [-2] + [-1]i7628[13] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])), ≥)∧[(-1)Bound*bni_76] + [bni_76]i58[13] + [(-1)bni_76]i7628[13] + [bni_76]i2[13] ≥ 0∧[(-1)bso_77] ≥ 0)



    We simplified constraint (85) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (86)    (i7628[13] + [1] ≥ 0∧i7630[13] + [-1] ≥ 0∧i2[13] + [-1] + [-1]i7628[13] ≥ 0∧i7628[13] + [-1] ≥ 0∧i7628[13] ≥ 0∧i2[13] + [-2] + [-1]i7628[13] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])), ≥)∧[(-1)Bound*bni_76] + [bni_76]i58[13] + [(-1)bni_76]i7628[13] + [bni_76]i2[13] ≥ 0∧[(-1)bso_77] ≥ 0)



    We simplified constraint (86) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (87)    (i7628[13] + [1] ≥ 0∧i7630[13] + [-1] ≥ 0∧i2[13] + [-1] + [-1]i7628[13] ≥ 0∧i7628[13] + [-1] ≥ 0∧i7628[13] ≥ 0∧i2[13] + [-2] + [-1]i7628[13] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])), ≥)∧[(-1)Bound*bni_76] + [bni_76]i58[13] + [(-1)bni_76]i7628[13] + [bni_76]i2[13] ≥ 0∧[(-1)bso_77] ≥ 0)



    We simplified constraint (87) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (88)    (i7628[13] + [1] ≥ 0∧i7630[13] + [-1] ≥ 0∧i2[13] + [-1] + [-1]i7628[13] ≥ 0∧i7628[13] + [-1] ≥ 0∧i7628[13] ≥ 0∧i2[13] + [-2] + [-1]i7628[13] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])), ≥)∧[bni_76] = 0∧0 = 0∧[(-1)Bound*bni_76] + [(-1)bni_76]i7628[13] + [bni_76]i2[13] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_77] ≥ 0)



    We simplified constraint (88) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (89)    ([2] + i7628[13] ≥ 0∧i7630[13] + [-1] ≥ 0∧i2[13] + [-2] + [-1]i7628[13] ≥ 0∧i7628[13] ≥ 0∧[1] + i7628[13] ≥ 0∧i2[13] + [-3] + [-1]i7628[13] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])), ≥)∧[bni_76] = 0∧0 = 0∧[(-1)Bound*bni_76 + (-1)bni_76] + [(-1)bni_76]i7628[13] + [bni_76]i2[13] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_77] ≥ 0)



    We simplified constraint (89) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (90)    ([2] + i7628[13] ≥ 0∧i7630[13] ≥ 0∧i2[13] + [-2] + [-1]i7628[13] ≥ 0∧i7628[13] ≥ 0∧[1] + i7628[13] ≥ 0∧i2[13] + [-3] + [-1]i7628[13] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])), ≥)∧[bni_76] = 0∧0 = 0∧[(-1)Bound*bni_76 + (-1)bni_76] + [(-1)bni_76]i7628[13] + [bni_76]i2[13] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_77] ≥ 0)



    We simplified constraint (90) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (91)    ([2] + i7628[13] ≥ 0∧i7630[13] ≥ 0∧i2[13] ≥ 0∧i7628[13] ≥ 0∧[1] + i7628[13] ≥ 0∧[-1] + i2[13] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])), ≥)∧[bni_76] = 0∧0 = 0∧[(-1)Bound*bni_76 + bni_76] + [bni_76]i2[13] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_77] ≥ 0)



    We simplified constraint (91) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (92)    ([2] + i7628[13] ≥ 0∧i7630[13] ≥ 0∧[1] + i2[13] ≥ 0∧i7628[13] ≥ 0∧[1] + i7628[13] ≥ 0∧i2[13] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])), ≥)∧[bni_76] = 0∧0 = 0∧[(-1)Bound*bni_76 + (2)bni_76] + [bni_76]i2[13] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_77] ≥ 0)







For Pair COND_LOAD13603ARR4(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), +(+(i7628, 1), 1), i58, +(i7630, -1)) the following chains were created:
  • We consider the chain COND_LOAD13603ARR4(TRUE, java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14], i58[14], i7630[14]) → LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), +(+(i7628[14], 1), 1), i58[14], +(i7630[14], -1)) which results in the following constraint:

    (93)    (COND_LOAD13603ARR4(TRUE, java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14], i58[14], i7630[14])≥NonInfC∧COND_LOAD13603ARR4(TRUE, java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14], i58[14], i7630[14])≥LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), +(+(i7628[14], 1), 1), i58[14], +(i7630[14], -1))∧(UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), +(+(i7628[14], 1), 1), i58[14], +(i7630[14], -1))), ≥))



    We simplified constraint (93) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (94)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), +(+(i7628[14], 1), 1), i58[14], +(i7630[14], -1))), ≥)∧[2 + (-1)bso_79] ≥ 0)



    We simplified constraint (94) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (95)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), +(+(i7628[14], 1), 1), i58[14], +(i7630[14], -1))), ≥)∧[2 + (-1)bso_79] ≥ 0)



    We simplified constraint (95) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (96)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), +(+(i7628[14], 1), 1), i58[14], +(i7630[14], -1))), ≥)∧[2 + (-1)bso_79] ≥ 0)



    We simplified constraint (96) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (97)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), +(+(i7628[14], 1), 1), i58[14], +(i7630[14], -1))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[2 + (-1)bso_79] ≥ 0)







For Pair LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → LOAD13603ARR5(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) the following chains were created:
  • We consider the chain LOAD13603(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15]) → LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15]), LOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16]) → COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16]) which results in the following constraint:

    (98)    (i58[15]=i58[16]i7628[15]=i7628[16]i2[15]=i2[16]a19203data[15]=a19203data[16]i7630[15]=i7630[16]LOAD13603(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])≥LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])∧(UIncreasing(LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])), ≥))



    We simplified constraint (98) using rule (IV) which results in the following new constraint:

    (99)    (LOAD13603(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])≥LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])∧(UIncreasing(LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])), ≥))



    We simplified constraint (99) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (100)    ((UIncreasing(LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])), ≥)∧[(-1)bso_81] ≥ 0)



    We simplified constraint (100) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (101)    ((UIncreasing(LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])), ≥)∧[(-1)bso_81] ≥ 0)



    We simplified constraint (101) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (102)    ((UIncreasing(LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])), ≥)∧[(-1)bso_81] ≥ 0)



    We simplified constraint (102) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (103)    ((UIncreasing(LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_81] ≥ 0)







For Pair LOAD13603ARR5(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → COND_LOAD13603ARR5(&&(&&(&&(>(i7628, 0), <(i7628, i2)), >(i7630, 0)), >(+(i7628, 1), 0)), java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) the following chains were created:
  • We consider the chain LOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16]) → COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16]), COND_LOAD13603ARR5(TRUE, java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17], i58[17], i7630[17]) → INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), +(i7628[17], 1), i58[17], i7630[17]) which results in the following constraint:

    (104)    (i2[16]=i2[17]a19203data[16]=a19203data[17]i7628[16]=i7628[17]i7630[16]=i7630[17]i58[16]=i58[17]&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0))=TRUELOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])≥NonInfC∧LOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])≥COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])∧(UIncreasing(COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])), ≥))



    We simplified constraint (104) using rules (IV), (IDP_BOOLEAN) which results in the following new constraint:

    (105)    (>(+(i7628[16], 1), 0)=TRUE>(i7630[16], 0)=TRUE>(i7628[16], 0)=TRUE<(i7628[16], i2[16])=TRUELOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])≥NonInfC∧LOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])≥COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])∧(UIncreasing(COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])), ≥))



    We simplified constraint (105) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (106)    (i7628[16] ≥ 0∧i7630[16] + [-1] ≥ 0∧i7628[16] + [-1] ≥ 0∧i2[16] + [-1] + [-1]i7628[16] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])), ≥)∧[(-1)Bound*bni_82] + [bni_82]i58[16] + [(-1)bni_82]i7628[16] + [bni_82]i2[16] ≥ 0∧[(-1)bso_83] ≥ 0)



    We simplified constraint (106) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (107)    (i7628[16] ≥ 0∧i7630[16] + [-1] ≥ 0∧i7628[16] + [-1] ≥ 0∧i2[16] + [-1] + [-1]i7628[16] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])), ≥)∧[(-1)Bound*bni_82] + [bni_82]i58[16] + [(-1)bni_82]i7628[16] + [bni_82]i2[16] ≥ 0∧[(-1)bso_83] ≥ 0)



    We simplified constraint (107) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (108)    (i7628[16] ≥ 0∧i7630[16] + [-1] ≥ 0∧i7628[16] + [-1] ≥ 0∧i2[16] + [-1] + [-1]i7628[16] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])), ≥)∧[(-1)Bound*bni_82] + [bni_82]i58[16] + [(-1)bni_82]i7628[16] + [bni_82]i2[16] ≥ 0∧[(-1)bso_83] ≥ 0)



    We simplified constraint (108) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (109)    (i7628[16] ≥ 0∧i7630[16] + [-1] ≥ 0∧i7628[16] + [-1] ≥ 0∧i2[16] + [-1] + [-1]i7628[16] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])), ≥)∧[bni_82] = 0∧0 = 0∧[(-1)Bound*bni_82] + [(-1)bni_82]i7628[16] + [bni_82]i2[16] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_83] ≥ 0)



    We simplified constraint (109) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (110)    ([1] + i7628[16] ≥ 0∧i7630[16] + [-1] ≥ 0∧i7628[16] ≥ 0∧i2[16] + [-2] + [-1]i7628[16] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])), ≥)∧[bni_82] = 0∧0 = 0∧[(-1)Bound*bni_82 + (-1)bni_82] + [(-1)bni_82]i7628[16] + [bni_82]i2[16] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_83] ≥ 0)



    We simplified constraint (110) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (111)    ([1] + i7628[16] ≥ 0∧i7630[16] ≥ 0∧i7628[16] ≥ 0∧i2[16] + [-2] + [-1]i7628[16] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])), ≥)∧[bni_82] = 0∧0 = 0∧[(-1)Bound*bni_82 + (-1)bni_82] + [(-1)bni_82]i7628[16] + [bni_82]i2[16] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_83] ≥ 0)



    We simplified constraint (111) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (112)    ([1] + i7628[16] ≥ 0∧i7630[16] ≥ 0∧i7628[16] ≥ 0∧i2[16] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])), ≥)∧[bni_82] = 0∧0 = 0∧[(-1)Bound*bni_82 + bni_82] + [bni_82]i2[16] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_83] ≥ 0)







For Pair COND_LOAD13603ARR5(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → INC15077(java.lang.Object(ARRAY(i2, a19203data)), +(i7628, 1), i58, i7630) the following chains were created:
  • We consider the chain COND_LOAD13603ARR5(TRUE, java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17], i58[17], i7630[17]) → INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), +(i7628[17], 1), i58[17], i7630[17]) which results in the following constraint:

    (113)    (COND_LOAD13603ARR5(TRUE, java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17], i58[17], i7630[17])≥NonInfC∧COND_LOAD13603ARR5(TRUE, java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17], i58[17], i7630[17])≥INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), +(i7628[17], 1), i58[17], i7630[17])∧(UIncreasing(INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), +(i7628[17], 1), i58[17], i7630[17])), ≥))



    We simplified constraint (113) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (114)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), +(i7628[17], 1), i58[17], i7630[17])), ≥)∧[1 + (-1)bso_85] ≥ 0)



    We simplified constraint (114) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (115)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), +(i7628[17], 1), i58[17], i7630[17])), ≥)∧[1 + (-1)bso_85] ≥ 0)



    We simplified constraint (115) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (116)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), +(i7628[17], 1), i58[17], i7630[17])), ≥)∧[1 + (-1)bso_85] ≥ 0)



    We simplified constraint (116) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (117)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), +(i7628[17], 1), i58[17], i7630[17])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_85] ≥ 0)







For Pair JMP15126'(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630) → INC15077(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630) the following chains were created:
  • We consider the chain JMP15126'(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18]) → INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18]), INC15077(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7]) → LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], +(i7630[7], -1)) which results in the following constraint:

    (118)    (i7710[18]=i7710[7]i2[18]=i2[7]a19203data[18]=a19203data[7]i58[18]=i58[7]i7630[18]=i7630[7]JMP15126'(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])≥NonInfC∧JMP15126'(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])≥INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])∧(UIncreasing(INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])), ≥))



    We simplified constraint (118) using rule (IV) which results in the following new constraint:

    (119)    (JMP15126'(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])≥NonInfC∧JMP15126'(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])≥INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])∧(UIncreasing(INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])), ≥))



    We simplified constraint (119) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (120)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])), ≥)∧[(-1)bso_87] ≥ 0)



    We simplified constraint (120) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (121)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])), ≥)∧[(-1)bso_87] ≥ 0)



    We simplified constraint (121) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (122)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])), ≥)∧[(-1)bso_87] ≥ 0)



    We simplified constraint (122) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (123)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_87] ≥ 0)







For Pair LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → LOAD13603ARR6(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) the following chains were created:
  • We consider the chain LOAD13603(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19]) → LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19]))) which results in the following constraint:

    (124)    (LOAD13603(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19])≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19])≥LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])))∧(UIncreasing(LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])))), ≥))



    We simplified constraint (124) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (125)    ((UIncreasing(LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])))), ≥)∧[1 + (-1)bso_89] ≥ 0)



    We simplified constraint (125) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (126)    ((UIncreasing(LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])))), ≥)∧[1 + (-1)bso_89] ≥ 0)



    We simplified constraint (126) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (127)    ((UIncreasing(LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])))), ≥)∧[1 + (-1)bso_89] ≥ 0)



    We simplified constraint (127) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (128)    ((UIncreasing(LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_89] ≥ 0)







For Pair LOAD13603ARR6(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996, 0), >(i7628, 0)), <(i7628, i2)), >(i7630, 0)), >(+(i7628, 1), 0)), java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) the following chains were created:
  • We consider the chain LOAD13603ARR6(java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20]))) → COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20]))), COND_LOAD13603ARR6(TRUE, java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21], i58[21], i7630[21], java.lang.Object(java.lang.String(i7996[21], i7860[21], i7862[21], a19737[21]))) → INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), +(i7628[21], 1), i58[21], i7630[21]) which results in the following constraint:

    (129)    (i7630[20]=i7630[21]i7628[20]=i7628[21]i2[20]=i2[21]a19203data[20]=a19203data[21]i58[20]=i58[21]&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0))=TRUEi7996[20]=i7996[21]i7860[20]=i7860[21]i7862[20]=i7862[21]a19737[20]=a19737[21]LOAD13603ARR6(java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))≥NonInfC∧LOAD13603ARR6(java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))≥COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))∧(UIncreasing(COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))), ≥))



    We simplified constraint (129) using rules (IV), (IDP_BOOLEAN) which results in the following new constraint:

    (130)    (>(+(i7628[20], 1), 0)=TRUE>(i7630[20], 0)=TRUE<(i7628[20], i2[20])=TRUE>(i7996[20], 0)=TRUE>(i7628[20], 0)=TRUELOAD13603ARR6(java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))≥NonInfC∧LOAD13603ARR6(java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))≥COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))∧(UIncreasing(COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))), ≥))



    We simplified constraint (130) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (131)    (i7628[20] ≥ 0∧i7630[20] + [-1] ≥ 0∧i2[20] + [-1] + [-1]i7628[20] ≥ 0∧i7996[20] + [-1] ≥ 0∧i7628[20] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))), ≥)∧[(-1)bni_90 + (-1)Bound*bni_90] + [bni_90]i58[20] + [(-1)bni_90]i7628[20] + [bni_90]i2[20] ≥ 0∧[(-1)bso_91] ≥ 0)



    We simplified constraint (131) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (132)    (i7628[20] ≥ 0∧i7630[20] + [-1] ≥ 0∧i2[20] + [-1] + [-1]i7628[20] ≥ 0∧i7996[20] + [-1] ≥ 0∧i7628[20] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))), ≥)∧[(-1)bni_90 + (-1)Bound*bni_90] + [bni_90]i58[20] + [(-1)bni_90]i7628[20] + [bni_90]i2[20] ≥ 0∧[(-1)bso_91] ≥ 0)



    We simplified constraint (132) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (133)    (i7628[20] ≥ 0∧i7630[20] + [-1] ≥ 0∧i2[20] + [-1] + [-1]i7628[20] ≥ 0∧i7996[20] + [-1] ≥ 0∧i7628[20] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))), ≥)∧[(-1)bni_90 + (-1)Bound*bni_90] + [bni_90]i58[20] + [(-1)bni_90]i7628[20] + [bni_90]i2[20] ≥ 0∧[(-1)bso_91] ≥ 0)



    We simplified constraint (133) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (134)    (i7628[20] ≥ 0∧i7630[20] + [-1] ≥ 0∧i2[20] + [-1] + [-1]i7628[20] ≥ 0∧i7996[20] + [-1] ≥ 0∧i7628[20] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧[bni_90] = 0∧0 = 0∧[(-1)bni_90 + (-1)Bound*bni_90] + [(-1)bni_90]i7628[20] + [bni_90]i2[20] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_91] ≥ 0)



    We simplified constraint (134) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (135)    ([1] + i7628[20] ≥ 0∧i7630[20] + [-1] ≥ 0∧i2[20] + [-2] + [-1]i7628[20] ≥ 0∧i7996[20] + [-1] ≥ 0∧i7628[20] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧[bni_90] = 0∧0 = 0∧[(-2)bni_90 + (-1)Bound*bni_90] + [(-1)bni_90]i7628[20] + [bni_90]i2[20] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_91] ≥ 0)



    We simplified constraint (135) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (136)    ([1] + i7628[20] ≥ 0∧i7630[20] ≥ 0∧i2[20] + [-2] + [-1]i7628[20] ≥ 0∧i7996[20] + [-1] ≥ 0∧i7628[20] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧[bni_90] = 0∧0 = 0∧[(-2)bni_90 + (-1)Bound*bni_90] + [(-1)bni_90]i7628[20] + [bni_90]i2[20] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_91] ≥ 0)



    We simplified constraint (136) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (137)    ([1] + i7628[20] ≥ 0∧i7630[20] ≥ 0∧i2[20] ≥ 0∧i7996[20] + [-1] ≥ 0∧i7628[20] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧[bni_90] = 0∧0 = 0∧[(-1)Bound*bni_90] + [bni_90]i2[20] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_91] ≥ 0)



    We simplified constraint (137) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (138)    ([1] + i7628[20] ≥ 0∧i7630[20] ≥ 0∧i2[20] ≥ 0∧i7996[20] ≥ 0∧i7628[20] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧[bni_90] = 0∧0 = 0∧[(-1)Bound*bni_90] + [bni_90]i2[20] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_91] ≥ 0)







For Pair COND_LOAD13603ARR6(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → INC15077(java.lang.Object(ARRAY(i2, a19203data)), +(i7628, 1), i58, i7630) the following chains were created:
  • We consider the chain COND_LOAD13603ARR6(TRUE, java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21], i58[21], i7630[21], java.lang.Object(java.lang.String(i7996[21], i7860[21], i7862[21], a19737[21]))) → INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), +(i7628[21], 1), i58[21], i7630[21]) which results in the following constraint:

    (139)    (COND_LOAD13603ARR6(TRUE, java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21], i58[21], i7630[21], java.lang.Object(java.lang.String(i7996[21], i7860[21], i7862[21], a19737[21])))≥NonInfC∧COND_LOAD13603ARR6(TRUE, java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21], i58[21], i7630[21], java.lang.Object(java.lang.String(i7996[21], i7860[21], i7862[21], a19737[21])))≥INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), +(i7628[21], 1), i58[21], i7630[21])∧(UIncreasing(INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), +(i7628[21], 1), i58[21], i7630[21])), ≥))



    We simplified constraint (139) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (140)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), +(i7628[21], 1), i58[21], i7630[21])), ≥)∧[(-1)bso_93] ≥ 0)



    We simplified constraint (140) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (141)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), +(i7628[21], 1), i58[21], i7630[21])), ≥)∧[(-1)bso_93] ≥ 0)



    We simplified constraint (141) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (142)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), +(i7628[21], 1), i58[21], i7630[21])), ≥)∧[(-1)bso_93] ≥ 0)



    We simplified constraint (142) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (143)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), +(i7628[21], 1), i58[21], i7630[21])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_93] ≥ 0)







For Pair JMP18886'(java.lang.Object(ARRAY(i2, a19203data)), i8946, i58, i7630) → INC18978(java.lang.Object(ARRAY(i2, a19203data)), i8946, i58, i7630) the following chains were created:
  • We consider the chain JMP18886'(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22]) → INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22]), INC18978(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11]) → LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], +(i7630[11], -1)) which results in the following constraint:

    (144)    (i58[22]=i58[11]i2[22]=i2[11]a19203data[22]=a19203data[11]i8946[22]=i8902[11]i7630[22]=i7630[11]JMP18886'(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])≥NonInfC∧JMP18886'(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])≥INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])∧(UIncreasing(INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])), ≥))



    We simplified constraint (144) using rule (IV) which results in the following new constraint:

    (145)    (JMP18886'(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])≥NonInfC∧JMP18886'(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])≥INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])∧(UIncreasing(INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])), ≥))



    We simplified constraint (145) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (146)    ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])), ≥)∧[(-1)bso_95] ≥ 0)



    We simplified constraint (146) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (147)    ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])), ≥)∧[(-1)bso_95] ≥ 0)



    We simplified constraint (147) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (148)    ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])), ≥)∧[(-1)bso_95] ≥ 0)



    We simplified constraint (148) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (149)    ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_95] ≥ 0)







For Pair LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → LOAD13603ARR7(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) the following chains were created:
  • We consider the chain LOAD13603(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23]) → LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23]))) which results in the following constraint:

    (150)    (LOAD13603(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23])≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23])≥LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))∧(UIncreasing(LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))), ≥))



    We simplified constraint (150) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (151)    ((UIncreasing(LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))), ≥)∧[1 + (-1)bso_97] ≥ 0)



    We simplified constraint (151) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (152)    ((UIncreasing(LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))), ≥)∧[1 + (-1)bso_97] ≥ 0)



    We simplified constraint (152) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (153)    ((UIncreasing(LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))), ≥)∧[1 + (-1)bso_97] ≥ 0)



    We simplified constraint (153) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (154)    ((UIncreasing(LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_97] ≥ 0)







For Pair LOAD13603ARR7(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628, 1), 0), <(+(i7628, 1), i2)), >(i7996, 0)), >(i7628, 0)), <(i7628, i2)), >(i7630, 0)), >(+(+(i7628, 1), 1), 0)), java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) the following chains were created:
  • We consider the chain LOAD13603ARR7(java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24]))) → COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24]))), COND_LOAD13603ARR7(TRUE, java.lang.Object(ARRAY(i2[25], a19203data[25])), i7628[25], i58[25], i7630[25], java.lang.Object(java.lang.String(i7996[25], i7860[25], i7862[25], a19737[25]))) → INC18978(java.lang.Object(ARRAY(i2[25], a19203data[25])), +(+(i7628[25], 1), 1), i58[25], i7630[25]) which results in the following constraint:

    (155)    (i58[24]=i58[25]i7996[24]=i7996[25]i7860[24]=i7860[25]i7862[24]=i7862[25]a19737[24]=a19737[25]i2[24]=i2[25]a19203data[24]=a19203data[25]i7628[24]=i7628[25]&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0))=TRUEi7630[24]=i7630[25]LOAD13603ARR7(java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))≥NonInfC∧LOAD13603ARR7(java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))≥COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))∧(UIncreasing(COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))), ≥))



    We simplified constraint (155) using rules (IV), (IDP_BOOLEAN) which results in the following new constraint:

    (156)    (>(+(+(i7628[24], 1), 1), 0)=TRUE>(i7630[24], 0)=TRUE<(i7628[24], i2[24])=TRUE>(i7628[24], 0)=TRUE>(i7996[24], 0)=TRUE>(+(i7628[24], 1), 0)=TRUE<(+(i7628[24], 1), i2[24])=TRUELOAD13603ARR7(java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))≥NonInfC∧LOAD13603ARR7(java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))≥COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))∧(UIncreasing(COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))), ≥))



    We simplified constraint (156) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (157)    (i7628[24] + [1] ≥ 0∧i7630[24] + [-1] ≥ 0∧i2[24] + [-1] + [-1]i7628[24] ≥ 0∧i7628[24] + [-1] ≥ 0∧i7996[24] + [-1] ≥ 0∧i7628[24] ≥ 0∧i2[24] + [-2] + [-1]i7628[24] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))), ≥)∧[(-1)bni_98 + (-1)Bound*bni_98] + [bni_98]i58[24] + [(-1)bni_98]i7628[24] + [bni_98]i2[24] ≥ 0∧[(-1)bso_99] ≥ 0)



    We simplified constraint (157) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (158)    (i7628[24] + [1] ≥ 0∧i7630[24] + [-1] ≥ 0∧i2[24] + [-1] + [-1]i7628[24] ≥ 0∧i7628[24] + [-1] ≥ 0∧i7996[24] + [-1] ≥ 0∧i7628[24] ≥ 0∧i2[24] + [-2] + [-1]i7628[24] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))), ≥)∧[(-1)bni_98 + (-1)Bound*bni_98] + [bni_98]i58[24] + [(-1)bni_98]i7628[24] + [bni_98]i2[24] ≥ 0∧[(-1)bso_99] ≥ 0)



    We simplified constraint (158) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (159)    (i7628[24] + [1] ≥ 0∧i7630[24] + [-1] ≥ 0∧i2[24] + [-1] + [-1]i7628[24] ≥ 0∧i7628[24] + [-1] ≥ 0∧i7996[24] + [-1] ≥ 0∧i7628[24] ≥ 0∧i2[24] + [-2] + [-1]i7628[24] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))), ≥)∧[(-1)bni_98 + (-1)Bound*bni_98] + [bni_98]i58[24] + [(-1)bni_98]i7628[24] + [bni_98]i2[24] ≥ 0∧[(-1)bso_99] ≥ 0)



    We simplified constraint (159) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (160)    (i7628[24] + [1] ≥ 0∧i7630[24] + [-1] ≥ 0∧i2[24] + [-1] + [-1]i7628[24] ≥ 0∧i7628[24] + [-1] ≥ 0∧i7996[24] + [-1] ≥ 0∧i7628[24] ≥ 0∧i2[24] + [-2] + [-1]i7628[24] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧[bni_98] = 0∧0 = 0∧[(-1)bni_98 + (-1)Bound*bni_98] + [(-1)bni_98]i7628[24] + [bni_98]i2[24] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_99] ≥ 0)



    We simplified constraint (160) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (161)    ([2] + i7628[24] ≥ 0∧i7630[24] + [-1] ≥ 0∧i2[24] + [-2] + [-1]i7628[24] ≥ 0∧i7628[24] ≥ 0∧i7996[24] + [-1] ≥ 0∧[1] + i7628[24] ≥ 0∧i2[24] + [-3] + [-1]i7628[24] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧[bni_98] = 0∧0 = 0∧[(-2)bni_98 + (-1)Bound*bni_98] + [(-1)bni_98]i7628[24] + [bni_98]i2[24] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_99] ≥ 0)



    We simplified constraint (161) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (162)    ([2] + i7628[24] ≥ 0∧i7630[24] ≥ 0∧i2[24] + [-2] + [-1]i7628[24] ≥ 0∧i7628[24] ≥ 0∧i7996[24] + [-1] ≥ 0∧[1] + i7628[24] ≥ 0∧i2[24] + [-3] + [-1]i7628[24] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧[bni_98] = 0∧0 = 0∧[(-2)bni_98 + (-1)Bound*bni_98] + [(-1)bni_98]i7628[24] + [bni_98]i2[24] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_99] ≥ 0)



    We simplified constraint (162) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (163)    ([2] + i7628[24] ≥ 0∧i7630[24] ≥ 0∧i2[24] ≥ 0∧i7628[24] ≥ 0∧i7996[24] + [-1] ≥ 0∧[1] + i7628[24] ≥ 0∧[-1] + i2[24] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧[bni_98] = 0∧0 = 0∧[(-1)Bound*bni_98] + [bni_98]i2[24] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_99] ≥ 0)



    We simplified constraint (163) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (164)    ([2] + i7628[24] ≥ 0∧i7630[24] ≥ 0∧[1] + i2[24] ≥ 0∧i7628[24] ≥ 0∧i7996[24] + [-1] ≥ 0∧[1] + i7628[24] ≥ 0∧i2[24] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧[bni_98] = 0∧0 = 0∧[bni_98 + (-1)Bound*bni_98] + [bni_98]i2[24] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_99] ≥ 0)



    We simplified constraint (164) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (165)    ([2] + i7628[24] ≥ 0∧i7630[24] ≥ 0∧[1] + i2[24] ≥ 0∧i7628[24] ≥ 0∧i7996[24] ≥ 0∧[1] + i7628[24] ≥ 0∧i2[24] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧[bni_98] = 0∧0 = 0∧[bni_98 + (-1)Bound*bni_98] + [bni_98]i2[24] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_99] ≥ 0)







For Pair COND_LOAD13603ARR7(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → INC18978(java.lang.Object(ARRAY(i2, a19203data)), +(+(i7628, 1), 1), i58, i7630) the following chains were created:
  • We consider the chain COND_LOAD13603ARR7(TRUE, java.lang.Object(ARRAY(i2[25], a19203data[25])), i7628[25], i58[25], i7630[25], java.lang.Object(java.lang.String(i7996[25], i7860[25], i7862[25], a19737[25]))) → INC18978(java.lang.Object(ARRAY(i2[25], a19203data[25])), +(+(i7628[25], 1), 1), i58[25], i7630[25]) which results in the following constraint:

    (166)    (COND_LOAD13603ARR7(TRUE, java.lang.Object(ARRAY(i2[25], a19203data[25])), i7628[25], i58[25], i7630[25], java.lang.Object(java.lang.String(i7996[25], i7860[25], i7862[25], a19737[25])))≥NonInfC∧COND_LOAD13603ARR7(TRUE, java.lang.Object(ARRAY(i2[25], a19203data[25])), i7628[25], i58[25], i7630[25], java.lang.Object(java.lang.String(i7996[25], i7860[25], i7862[25], a19737[25])))≥INC18978(java.lang.Object(ARRAY(i2[25], a19203data[25])), +(+(i7628[25], 1), 1), i58[25], i7630[25])∧(UIncreasing(INC18978(java.lang.Object(ARRAY(i2[25], a19203data[25])), +(+(i7628[25], 1), 1), i58[25], i7630[25])), ≥))



    We simplified constraint (166) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (167)    ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[25], a19203data[25])), +(+(i7628[25], 1), 1), i58[25], i7630[25])), ≥)∧[1 + (-1)bso_101] ≥ 0)



    We simplified constraint (167) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (168)    ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[25], a19203data[25])), +(+(i7628[25], 1), 1), i58[25], i7630[25])), ≥)∧[1 + (-1)bso_101] ≥ 0)



    We simplified constraint (168) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (169)    ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[25], a19203data[25])), +(+(i7628[25], 1), 1), i58[25], i7630[25])), ≥)∧[1 + (-1)bso_101] ≥ 0)



    We simplified constraint (169) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (170)    ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[25], a19203data[25])), +(+(i7628[25], 1), 1), i58[25], i7630[25])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_101] ≥ 0)







For Pair LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → LOAD13603ARR8(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) the following chains were created:
  • We consider the chain LOAD13603(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26]) → LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26]), LOAD13603ARR8(java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27]) → COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27]) which results in the following constraint:

    (171)    (i2[26]=i2[27]a19203data[26]=a19203data[27]i7628[26]=i7628[27]i7630[26]=i7630[27]i58[26]=i58[27]LOAD13603(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])≥LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])∧(UIncreasing(LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])), ≥))



    We simplified constraint (171) using rule (IV) which results in the following new constraint:

    (172)    (LOAD13603(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])≥LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])∧(UIncreasing(LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])), ≥))



    We simplified constraint (172) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (173)    ((UIncreasing(LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])), ≥)∧[(-1)bso_103] ≥ 0)



    We simplified constraint (173) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (174)    ((UIncreasing(LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])), ≥)∧[(-1)bso_103] ≥ 0)



    We simplified constraint (174) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (175)    ((UIncreasing(LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])), ≥)∧[(-1)bso_103] ≥ 0)



    We simplified constraint (175) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (176)    ((UIncreasing(LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_103] ≥ 0)







For Pair LOAD13603ARR8(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628, 1), 0), <(+(i7628, 1), i2)), >(i7628, 0)), <(i7628, i2)), >(i7630, 0)), >(+(+(i7628, 1), 1), 0)), java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) the following chains were created:
  • We consider the chain LOAD13603ARR8(java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27]) → COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27]), COND_LOAD13603ARR8(TRUE, java.lang.Object(ARRAY(i2[28], a19203data[28])), i7628[28], i58[28], i7630[28]) → INC18978(java.lang.Object(ARRAY(i2[28], a19203data[28])), +(+(i7628[28], 1), 1), i58[28], i7630[28]) which results in the following constraint:

    (177)    (i7628[27]=i7628[28]i7630[27]=i7630[28]i58[27]=i58[28]i2[27]=i2[28]a19203data[27]=a19203data[28]&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0))=TRUELOAD13603ARR8(java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])≥NonInfC∧LOAD13603ARR8(java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])≥COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])∧(UIncreasing(COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])), ≥))



    We simplified constraint (177) using rules (IV), (IDP_BOOLEAN) which results in the following new constraint:

    (178)    (>(+(+(i7628[27], 1), 1), 0)=TRUE>(i7630[27], 0)=TRUE<(i7628[27], i2[27])=TRUE>(i7628[27], 0)=TRUE>(+(i7628[27], 1), 0)=TRUE<(+(i7628[27], 1), i2[27])=TRUELOAD13603ARR8(java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])≥NonInfC∧LOAD13603ARR8(java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])≥COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])∧(UIncreasing(COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])), ≥))



    We simplified constraint (178) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (179)    (i7628[27] + [1] ≥ 0∧i7630[27] + [-1] ≥ 0∧i2[27] + [-1] + [-1]i7628[27] ≥ 0∧i7628[27] + [-1] ≥ 0∧i7628[27] ≥ 0∧i2[27] + [-2] + [-1]i7628[27] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])), ≥)∧[(-1)Bound*bni_104] + [bni_104]i58[27] + [(-1)bni_104]i7628[27] + [bni_104]i2[27] ≥ 0∧[(-1)bso_105] ≥ 0)



    We simplified constraint (179) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (180)    (i7628[27] + [1] ≥ 0∧i7630[27] + [-1] ≥ 0∧i2[27] + [-1] + [-1]i7628[27] ≥ 0∧i7628[27] + [-1] ≥ 0∧i7628[27] ≥ 0∧i2[27] + [-2] + [-1]i7628[27] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])), ≥)∧[(-1)Bound*bni_104] + [bni_104]i58[27] + [(-1)bni_104]i7628[27] + [bni_104]i2[27] ≥ 0∧[(-1)bso_105] ≥ 0)



    We simplified constraint (180) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (181)    (i7628[27] + [1] ≥ 0∧i7630[27] + [-1] ≥ 0∧i2[27] + [-1] + [-1]i7628[27] ≥ 0∧i7628[27] + [-1] ≥ 0∧i7628[27] ≥ 0∧i2[27] + [-2] + [-1]i7628[27] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])), ≥)∧[(-1)Bound*bni_104] + [bni_104]i58[27] + [(-1)bni_104]i7628[27] + [bni_104]i2[27] ≥ 0∧[(-1)bso_105] ≥ 0)



    We simplified constraint (181) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (182)    (i7628[27] + [1] ≥ 0∧i7630[27] + [-1] ≥ 0∧i2[27] + [-1] + [-1]i7628[27] ≥ 0∧i7628[27] + [-1] ≥ 0∧i7628[27] ≥ 0∧i2[27] + [-2] + [-1]i7628[27] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])), ≥)∧[bni_104] = 0∧0 = 0∧[(-1)Bound*bni_104] + [(-1)bni_104]i7628[27] + [bni_104]i2[27] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_105] ≥ 0)



    We simplified constraint (182) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (183)    ([2] + i7628[27] ≥ 0∧i7630[27] + [-1] ≥ 0∧i2[27] + [-2] + [-1]i7628[27] ≥ 0∧i7628[27] ≥ 0∧[1] + i7628[27] ≥ 0∧i2[27] + [-3] + [-1]i7628[27] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])), ≥)∧[bni_104] = 0∧0 = 0∧[(-1)Bound*bni_104 + (-1)bni_104] + [(-1)bni_104]i7628[27] + [bni_104]i2[27] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_105] ≥ 0)



    We simplified constraint (183) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (184)    ([2] + i7628[27] ≥ 0∧i7630[27] ≥ 0∧i2[27] + [-2] + [-1]i7628[27] ≥ 0∧i7628[27] ≥ 0∧[1] + i7628[27] ≥ 0∧i2[27] + [-3] + [-1]i7628[27] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])), ≥)∧[bni_104] = 0∧0 = 0∧[(-1)Bound*bni_104 + (-1)bni_104] + [(-1)bni_104]i7628[27] + [bni_104]i2[27] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_105] ≥ 0)



    We simplified constraint (184) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (185)    ([2] + i7628[27] ≥ 0∧i7630[27] ≥ 0∧i2[27] ≥ 0∧i7628[27] ≥ 0∧[1] + i7628[27] ≥ 0∧[-1] + i2[27] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])), ≥)∧[bni_104] = 0∧0 = 0∧[(-1)Bound*bni_104 + bni_104] + [bni_104]i2[27] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_105] ≥ 0)



    We simplified constraint (185) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (186)    ([2] + i7628[27] ≥ 0∧i7630[27] ≥ 0∧[1] + i2[27] ≥ 0∧i7628[27] ≥ 0∧[1] + i7628[27] ≥ 0∧i2[27] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])), ≥)∧[bni_104] = 0∧0 = 0∧[(-1)Bound*bni_104 + (2)bni_104] + [bni_104]i2[27] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_105] ≥ 0)







For Pair COND_LOAD13603ARR8(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → INC18978(java.lang.Object(ARRAY(i2, a19203data)), +(+(i7628, 1), 1), i58, i7630) the following chains were created:
  • We consider the chain COND_LOAD13603ARR8(TRUE, java.lang.Object(ARRAY(i2[28], a19203data[28])), i7628[28], i58[28], i7630[28]) → INC18978(java.lang.Object(ARRAY(i2[28], a19203data[28])), +(+(i7628[28], 1), 1), i58[28], i7630[28]) which results in the following constraint:

    (187)    (COND_LOAD13603ARR8(TRUE, java.lang.Object(ARRAY(i2[28], a19203data[28])), i7628[28], i58[28], i7630[28])≥NonInfC∧COND_LOAD13603ARR8(TRUE, java.lang.Object(ARRAY(i2[28], a19203data[28])), i7628[28], i58[28], i7630[28])≥INC18978(java.lang.Object(ARRAY(i2[28], a19203data[28])), +(+(i7628[28], 1), 1), i58[28], i7630[28])∧(UIncreasing(INC18978(java.lang.Object(ARRAY(i2[28], a19203data[28])), +(+(i7628[28], 1), 1), i58[28], i7630[28])), ≥))



    We simplified constraint (187) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (188)    ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[28], a19203data[28])), +(+(i7628[28], 1), 1), i58[28], i7630[28])), ≥)∧[2 + (-1)bso_107] ≥ 0)



    We simplified constraint (188) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (189)    ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[28], a19203data[28])), +(+(i7628[28], 1), 1), i58[28], i7630[28])), ≥)∧[2 + (-1)bso_107] ≥ 0)



    We simplified constraint (189) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (190)    ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[28], a19203data[28])), +(+(i7628[28], 1), 1), i58[28], i7630[28])), ≥)∧[2 + (-1)bso_107] ≥ 0)



    We simplified constraint (190) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (191)    ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[28], a19203data[28])), +(+(i7628[28], 1), 1), i58[28], i7630[28])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[2 + (-1)bso_107] ≥ 0)







For Pair LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → LOAD13603ARR9(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) the following chains were created:
  • We consider the chain LOAD13603(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29]) → LOAD13603ARR9(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29], java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29]))) which results in the following constraint:

    (192)    (LOAD13603(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29])≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29])≥LOAD13603ARR9(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29], java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29])))∧(UIncreasing(LOAD13603ARR9(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29], java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29])))), ≥))



    We simplified constraint (192) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (193)    ((UIncreasing(LOAD13603ARR9(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29], java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29])))), ≥)∧[1 + (-1)bso_109] ≥ 0)



    We simplified constraint (193) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (194)    ((UIncreasing(LOAD13603ARR9(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29], java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29])))), ≥)∧[1 + (-1)bso_109] ≥ 0)



    We simplified constraint (194) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (195)    ((UIncreasing(LOAD13603ARR9(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29], java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29])))), ≥)∧[1 + (-1)bso_109] ≥ 0)



    We simplified constraint (195) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (196)    ((UIncreasing(LOAD13603ARR9(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29], java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_109] ≥ 0)







For Pair LOAD13603ARR9(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996, 0), >(i7628, 0)), <(i7628, i2)), >(i7630, 0)), >(+(i7628, 1), 0)), java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) the following chains were created:
  • We consider the chain LOAD13603ARR9(java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30]))) → COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30]))), COND_LOAD13603ARR9(TRUE, java.lang.Object(ARRAY(i2[31], a19203data[31])), i7628[31], i58[31], i7630[31], java.lang.Object(java.lang.String(i7996[31], i7860[31], i7862[31], a19737[31]))) → JMP15126'(java.lang.Object(ARRAY(i2[31], a19203data[31])), +(i7628[31], 1), i58[31], i7630[31]) which results in the following constraint:

    (197)    (i58[30]=i58[31]i7628[30]=i7628[31]i2[30]=i2[31]a19203data[30]=a19203data[31]&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0))=TRUEi7996[30]=i7996[31]i7860[30]=i7860[31]i7862[30]=i7862[31]a19737[30]=a19737[31]i7630[30]=i7630[31]LOAD13603ARR9(java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))≥NonInfC∧LOAD13603ARR9(java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))≥COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))∧(UIncreasing(COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))), ≥))



    We simplified constraint (197) using rules (IV), (IDP_BOOLEAN) which results in the following new constraint:

    (198)    (>(+(i7628[30], 1), 0)=TRUE>(i7630[30], 0)=TRUE<(i7628[30], i2[30])=TRUE>(i7996[30], 0)=TRUE>(i7628[30], 0)=TRUELOAD13603ARR9(java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))≥NonInfC∧LOAD13603ARR9(java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))≥COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))∧(UIncreasing(COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))), ≥))



    We simplified constraint (198) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (199)    (i7628[30] ≥ 0∧i7630[30] + [-1] ≥ 0∧i2[30] + [-1] + [-1]i7628[30] ≥ 0∧i7996[30] + [-1] ≥ 0∧i7628[30] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))), ≥)∧[(-1)bni_110 + (-1)Bound*bni_110] + [bni_110]i58[30] + [(-1)bni_110]i7628[30] + [bni_110]i2[30] ≥ 0∧[(-1)bso_111] ≥ 0)



    We simplified constraint (199) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (200)    (i7628[30] ≥ 0∧i7630[30] + [-1] ≥ 0∧i2[30] + [-1] + [-1]i7628[30] ≥ 0∧i7996[30] + [-1] ≥ 0∧i7628[30] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))), ≥)∧[(-1)bni_110 + (-1)Bound*bni_110] + [bni_110]i58[30] + [(-1)bni_110]i7628[30] + [bni_110]i2[30] ≥ 0∧[(-1)bso_111] ≥ 0)



    We simplified constraint (200) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (201)    (i7628[30] ≥ 0∧i7630[30] + [-1] ≥ 0∧i2[30] + [-1] + [-1]i7628[30] ≥ 0∧i7996[30] + [-1] ≥ 0∧i7628[30] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))), ≥)∧[(-1)bni_110 + (-1)Bound*bni_110] + [bni_110]i58[30] + [(-1)bni_110]i7628[30] + [bni_110]i2[30] ≥ 0∧[(-1)bso_111] ≥ 0)



    We simplified constraint (201) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (202)    (i7628[30] ≥ 0∧i7630[30] + [-1] ≥ 0∧i2[30] + [-1] + [-1]i7628[30] ≥ 0∧i7996[30] + [-1] ≥ 0∧i7628[30] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧[bni_110] = 0∧0 = 0∧[(-1)bni_110 + (-1)Bound*bni_110] + [(-1)bni_110]i7628[30] + [bni_110]i2[30] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_111] ≥ 0)



    We simplified constraint (202) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (203)    ([1] + i7628[30] ≥ 0∧i7630[30] + [-1] ≥ 0∧i2[30] + [-2] + [-1]i7628[30] ≥ 0∧i7996[30] + [-1] ≥ 0∧i7628[30] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧[bni_110] = 0∧0 = 0∧[(-2)bni_110 + (-1)Bound*bni_110] + [(-1)bni_110]i7628[30] + [bni_110]i2[30] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_111] ≥ 0)



    We simplified constraint (203) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (204)    ([1] + i7628[30] ≥ 0∧i7630[30] ≥ 0∧i2[30] + [-2] + [-1]i7628[30] ≥ 0∧i7996[30] + [-1] ≥ 0∧i7628[30] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧[bni_110] = 0∧0 = 0∧[(-2)bni_110 + (-1)Bound*bni_110] + [(-1)bni_110]i7628[30] + [bni_110]i2[30] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_111] ≥ 0)



    We simplified constraint (204) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (205)    ([1] + i7628[30] ≥ 0∧i7630[30] ≥ 0∧i2[30] ≥ 0∧i7996[30] + [-1] ≥ 0∧i7628[30] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧[bni_110] = 0∧0 = 0∧[(-1)Bound*bni_110] + [bni_110]i2[30] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_111] ≥ 0)



    We simplified constraint (205) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (206)    ([1] + i7628[30] ≥ 0∧i7630[30] ≥ 0∧i2[30] ≥ 0∧i7996[30] ≥ 0∧i7628[30] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧[bni_110] = 0∧0 = 0∧[(-1)Bound*bni_110] + [bni_110]i2[30] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_111] ≥ 0)







For Pair COND_LOAD13603ARR9(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → JMP15126'(java.lang.Object(ARRAY(i2, a19203data)), +(i7628, 1), i58, i7630) the following chains were created:
  • We consider the chain COND_LOAD13603ARR9(TRUE, java.lang.Object(ARRAY(i2[31], a19203data[31])), i7628[31], i58[31], i7630[31], java.lang.Object(java.lang.String(i7996[31], i7860[31], i7862[31], a19737[31]))) → JMP15126'(java.lang.Object(ARRAY(i2[31], a19203data[31])), +(i7628[31], 1), i58[31], i7630[31]) which results in the following constraint:

    (207)    (COND_LOAD13603ARR9(TRUE, java.lang.Object(ARRAY(i2[31], a19203data[31])), i7628[31], i58[31], i7630[31], java.lang.Object(java.lang.String(i7996[31], i7860[31], i7862[31], a19737[31])))≥NonInfC∧COND_LOAD13603ARR9(TRUE, java.lang.Object(ARRAY(i2[31], a19203data[31])), i7628[31], i58[31], i7630[31], java.lang.Object(java.lang.String(i7996[31], i7860[31], i7862[31], a19737[31])))≥JMP15126'(java.lang.Object(ARRAY(i2[31], a19203data[31])), +(i7628[31], 1), i58[31], i7630[31])∧(UIncreasing(JMP15126'(java.lang.Object(ARRAY(i2[31], a19203data[31])), +(i7628[31], 1), i58[31], i7630[31])), ≥))



    We simplified constraint (207) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (208)    ((UIncreasing(JMP15126'(java.lang.Object(ARRAY(i2[31], a19203data[31])), +(i7628[31], 1), i58[31], i7630[31])), ≥)∧[(-1)bso_113] ≥ 0)



    We simplified constraint (208) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (209)    ((UIncreasing(JMP15126'(java.lang.Object(ARRAY(i2[31], a19203data[31])), +(i7628[31], 1), i58[31], i7630[31])), ≥)∧[(-1)bso_113] ≥ 0)



    We simplified constraint (209) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (210)    ((UIncreasing(JMP15126'(java.lang.Object(ARRAY(i2[31], a19203data[31])), +(i7628[31], 1), i58[31], i7630[31])), ≥)∧[(-1)bso_113] ≥ 0)



    We simplified constraint (210) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (211)    ((UIncreasing(JMP15126'(java.lang.Object(ARRAY(i2[31], a19203data[31])), +(i7628[31], 1), i58[31], i7630[31])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_113] ≥ 0)







For Pair LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → LOAD13603ARR10(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) the following chains were created:
  • We consider the chain LOAD13603(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32]) → LOAD13603ARR10(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32], java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32]))) which results in the following constraint:

    (212)    (LOAD13603(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32])≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32])≥LOAD13603ARR10(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32], java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32])))∧(UIncreasing(LOAD13603ARR10(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32], java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32])))), ≥))



    We simplified constraint (212) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (213)    ((UIncreasing(LOAD13603ARR10(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32], java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32])))), ≥)∧[1 + (-1)bso_115] ≥ 0)



    We simplified constraint (213) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (214)    ((UIncreasing(LOAD13603ARR10(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32], java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32])))), ≥)∧[1 + (-1)bso_115] ≥ 0)



    We simplified constraint (214) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (215)    ((UIncreasing(LOAD13603ARR10(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32], java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32])))), ≥)∧[1 + (-1)bso_115] ≥ 0)



    We simplified constraint (215) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (216)    ((UIncreasing(LOAD13603ARR10(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32], java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_115] ≥ 0)







For Pair LOAD13603ARR10(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628, 1), 0), <(+(i7628, 1), i2)), >(i7996, 0)), >(i7628, 0)), <(i7628, i2)), >(i7630, 0)), >(+(+(i7628, 1), 1), 0)), java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) the following chains were created:
  • We consider the chain LOAD13603ARR10(java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33]))) → COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33]))), COND_LOAD13603ARR10(TRUE, java.lang.Object(ARRAY(i2[34], a19203data[34])), i7628[34], i58[34], i7630[34], java.lang.Object(java.lang.String(i7996[34], i7860[34], i7862[34], a19737[34]))) → JMP18886'(java.lang.Object(ARRAY(i2[34], a19203data[34])), +(+(i7628[34], 1), 1), i58[34], i7630[34]) which results in the following constraint:

    (217)    (i7628[33]=i7628[34]i2[33]=i2[34]a19203data[33]=a19203data[34]&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0))=TRUEi7996[33]=i7996[34]i7860[33]=i7860[34]i7862[33]=i7862[34]a19737[33]=a19737[34]i58[33]=i58[34]i7630[33]=i7630[34]LOAD13603ARR10(java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))≥NonInfC∧LOAD13603ARR10(java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))≥COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))∧(UIncreasing(COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))), ≥))



    We simplified constraint (217) using rules (IV), (IDP_BOOLEAN) which results in the following new constraint:

    (218)    (>(+(+(i7628[33], 1), 1), 0)=TRUE>(i7630[33], 0)=TRUE<(i7628[33], i2[33])=TRUE>(i7628[33], 0)=TRUE>(i7996[33], 0)=TRUE>(+(i7628[33], 1), 0)=TRUE<(+(i7628[33], 1), i2[33])=TRUELOAD13603ARR10(java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))≥NonInfC∧LOAD13603ARR10(java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))≥COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))∧(UIncreasing(COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))), ≥))



    We simplified constraint (218) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (219)    (i7628[33] + [1] ≥ 0∧i7630[33] + [-1] ≥ 0∧i2[33] + [-1] + [-1]i7628[33] ≥ 0∧i7628[33] + [-1] ≥ 0∧i7996[33] + [-1] ≥ 0∧i7628[33] ≥ 0∧i2[33] + [-2] + [-1]i7628[33] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))), ≥)∧[(-1)bni_116 + (-1)Bound*bni_116] + [bni_116]i58[33] + [(-1)bni_116]i7628[33] + [bni_116]i2[33] ≥ 0∧[(-1)bso_117] ≥ 0)



    We simplified constraint (219) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (220)    (i7628[33] + [1] ≥ 0∧i7630[33] + [-1] ≥ 0∧i2[33] + [-1] + [-1]i7628[33] ≥ 0∧i7628[33] + [-1] ≥ 0∧i7996[33] + [-1] ≥ 0∧i7628[33] ≥ 0∧i2[33] + [-2] + [-1]i7628[33] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))), ≥)∧[(-1)bni_116 + (-1)Bound*bni_116] + [bni_116]i58[33] + [(-1)bni_116]i7628[33] + [bni_116]i2[33] ≥ 0∧[(-1)bso_117] ≥ 0)



    We simplified constraint (220) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (221)    (i7628[33] + [1] ≥ 0∧i7630[33] + [-1] ≥ 0∧i2[33] + [-1] + [-1]i7628[33] ≥ 0∧i7628[33] + [-1] ≥ 0∧i7996[33] + [-1] ≥ 0∧i7628[33] ≥ 0∧i2[33] + [-2] + [-1]i7628[33] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))), ≥)∧[(-1)bni_116 + (-1)Bound*bni_116] + [bni_116]i58[33] + [(-1)bni_116]i7628[33] + [bni_116]i2[33] ≥ 0∧[(-1)bso_117] ≥ 0)



    We simplified constraint (221) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (222)    (i7628[33] + [1] ≥ 0∧i7630[33] + [-1] ≥ 0∧i2[33] + [-1] + [-1]i7628[33] ≥ 0∧i7628[33] + [-1] ≥ 0∧i7996[33] + [-1] ≥ 0∧i7628[33] ≥ 0∧i2[33] + [-2] + [-1]i7628[33] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧[bni_116] = 0∧0 = 0∧[(-1)bni_116 + (-1)Bound*bni_116] + [(-1)bni_116]i7628[33] + [bni_116]i2[33] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_117] ≥ 0)



    We simplified constraint (222) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (223)    ([2] + i7628[33] ≥ 0∧i7630[33] + [-1] ≥ 0∧i2[33] + [-2] + [-1]i7628[33] ≥ 0∧i7628[33] ≥ 0∧i7996[33] + [-1] ≥ 0∧[1] + i7628[33] ≥ 0∧i2[33] + [-3] + [-1]i7628[33] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧[bni_116] = 0∧0 = 0∧[(-2)bni_116 + (-1)Bound*bni_116] + [(-1)bni_116]i7628[33] + [bni_116]i2[33] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_117] ≥ 0)



    We simplified constraint (223) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (224)    ([2] + i7628[33] ≥ 0∧i7630[33] ≥ 0∧i2[33] + [-2] + [-1]i7628[33] ≥ 0∧i7628[33] ≥ 0∧i7996[33] + [-1] ≥ 0∧[1] + i7628[33] ≥ 0∧i2[33] + [-3] + [-1]i7628[33] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧[bni_116] = 0∧0 = 0∧[(-2)bni_116 + (-1)Bound*bni_116] + [(-1)bni_116]i7628[33] + [bni_116]i2[33] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_117] ≥ 0)



    We simplified constraint (224) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (225)    ([2] + i7628[33] ≥ 0∧i7630[33] ≥ 0∧i2[33] ≥ 0∧i7628[33] ≥ 0∧i7996[33] + [-1] ≥ 0∧[1] + i7628[33] ≥ 0∧[-1] + i2[33] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧[bni_116] = 0∧0 = 0∧[(-1)Bound*bni_116] + [bni_116]i2[33] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_117] ≥ 0)



    We simplified constraint (225) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (226)    ([2] + i7628[33] ≥ 0∧i7630[33] ≥ 0∧[1] + i2[33] ≥ 0∧i7628[33] ≥ 0∧i7996[33] + [-1] ≥ 0∧[1] + i7628[33] ≥ 0∧i2[33] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧[bni_116] = 0∧0 = 0∧[bni_116 + (-1)Bound*bni_116] + [bni_116]i2[33] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_117] ≥ 0)



    We simplified constraint (226) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (227)    ([2] + i7628[33] ≥ 0∧i7630[33] ≥ 0∧[1] + i2[33] ≥ 0∧i7628[33] ≥ 0∧i7996[33] ≥ 0∧[1] + i7628[33] ≥ 0∧i2[33] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧[bni_116] = 0∧0 = 0∧[bni_116 + (-1)Bound*bni_116] + [bni_116]i2[33] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_117] ≥ 0)







For Pair COND_LOAD13603ARR10(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → JMP18886'(java.lang.Object(ARRAY(i2, a19203data)), +(+(i7628, 1), 1), i58, i7630) the following chains were created:
  • We consider the chain COND_LOAD13603ARR10(TRUE, java.lang.Object(ARRAY(i2[34], a19203data[34])), i7628[34], i58[34], i7630[34], java.lang.Object(java.lang.String(i7996[34], i7860[34], i7862[34], a19737[34]))) → JMP18886'(java.lang.Object(ARRAY(i2[34], a19203data[34])), +(+(i7628[34], 1), 1), i58[34], i7630[34]) which results in the following constraint:

    (228)    (COND_LOAD13603ARR10(TRUE, java.lang.Object(ARRAY(i2[34], a19203data[34])), i7628[34], i58[34], i7630[34], java.lang.Object(java.lang.String(i7996[34], i7860[34], i7862[34], a19737[34])))≥NonInfC∧COND_LOAD13603ARR10(TRUE, java.lang.Object(ARRAY(i2[34], a19203data[34])), i7628[34], i58[34], i7630[34], java.lang.Object(java.lang.String(i7996[34], i7860[34], i7862[34], a19737[34])))≥JMP18886'(java.lang.Object(ARRAY(i2[34], a19203data[34])), +(+(i7628[34], 1), 1), i58[34], i7630[34])∧(UIncreasing(JMP18886'(java.lang.Object(ARRAY(i2[34], a19203data[34])), +(+(i7628[34], 1), 1), i58[34], i7630[34])), ≥))



    We simplified constraint (228) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (229)    ((UIncreasing(JMP18886'(java.lang.Object(ARRAY(i2[34], a19203data[34])), +(+(i7628[34], 1), 1), i58[34], i7630[34])), ≥)∧[1 + (-1)bso_119] ≥ 0)



    We simplified constraint (229) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (230)    ((UIncreasing(JMP18886'(java.lang.Object(ARRAY(i2[34], a19203data[34])), +(+(i7628[34], 1), 1), i58[34], i7630[34])), ≥)∧[1 + (-1)bso_119] ≥ 0)



    We simplified constraint (230) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (231)    ((UIncreasing(JMP18886'(java.lang.Object(ARRAY(i2[34], a19203data[34])), +(+(i7628[34], 1), 1), i58[34], i7630[34])), ≥)∧[1 + (-1)bso_119] ≥ 0)



    We simplified constraint (231) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (232)    ((UIncreasing(JMP18886'(java.lang.Object(ARRAY(i2[34], a19203data[34])), +(+(i7628[34], 1), 1), i58[34], i7630[34])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_119] ≥ 0)







To summarize, we get the following constraints P for the following pairs.
  • LOAD715(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → LOAD715ARR1(java.lang.Object(ARRAY(i2, a694data)), i56, i58)
    • ((UIncreasing(LOAD715ARR1(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_51] ≥ 0)

  • LOAD715ARR1(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → COND_LOAD715ARR1(&&(&&(&&(>(i56, 0), <(i56, i2)), >(i58, 0)), >(+(i56, 1), 0)), java.lang.Object(ARRAY(i2, a694data)), i56, i58)
    • ([1] + i56[1] ≥ 0∧i58[1] ≥ 0∧i56[1] ≥ 0∧i2[1] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR1(&&(&&(&&(>(i56[1], 0), <(i56[1], i2[1])), >(i58[1], 0)), >(+(i56[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])), ≥)∧0 = 0∧[(-1)Bound*bni_52 + (2)bni_52] + [bni_52]i58[1] + [bni_52]i2[1] ≥ 0∧0 = 0∧[(-1)bso_53] ≥ 0)

  • COND_LOAD715ARR1(TRUE, java.lang.Object(ARRAY(i2, a694data)), i56, i58) → LOAD715(java.lang.Object(ARRAY(i2, a694data)), +(i56, 1), +(i58, -1))
    • ((UIncreasing(LOAD715(java.lang.Object(ARRAY(i2[2], a694data[2])), +(i56[2], 1), +(i58[2], -1))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[2 + (-1)bso_55] ≥ 0)

  • LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, 0) → LOAD715(java.lang.Object(ARRAY(i2, a19203data)), i7628, +(i58, -1))
    • ((UIncreasing(LOAD715(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], +(i58[3], -1))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_57] ≥ 0)

  • LOAD715(java.lang.Object(ARRAY(i2, a694data)), i56, i58) → LOAD715ARR2(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823)))
    • ((UIncreasing(LOAD715ARR2(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4], java.lang.Object(java.lang.String(i109[4], i86[4], i88[4], a823[4])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_59] ≥ 0)

  • LOAD715ARR2(java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823))) → COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56, 1), 0), <(+(i56, 1), i2)), >(i109, 0)), >(i56, 0)), <(i56, i2)), >(i58, 0)), >(+(+(i56, 1), 1), 0)), java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823)))
    • ([2] + i56[5] ≥ 0∧i58[5] ≥ 0∧[1] + i2[5] ≥ 0∧i56[5] ≥ 0∧i109[5] ≥ 0∧[1] + i56[5] ≥ 0∧i2[5] ≥ 0 ⇒ (UIncreasing(COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0)), java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_60 + (2)bni_60] + [bni_60]i58[5] + [bni_60]i2[5] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_61] ≥ 0)

  • COND_LOAD715ARR2(TRUE, java.lang.Object(ARRAY(i2, a694data)), i56, i58, java.lang.Object(java.lang.String(i109, i86, i88, a823))) → LOAD13603(java.lang.Object(ARRAY(i2, a694data)), +(+(i56, 1), 1), i58, i109)
    • ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[6], a694data[6])), +(+(i56[6], 1), 1), i58[6], i109[6])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_63] ≥ 0)

  • INC15077(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630) → LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, +(i7630, -1))
    • ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], +(i7630[7], -1))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_65] ≥ 0)

  • LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → LOAD13603ARR3(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
    • ((UIncreasing(LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_67] ≥ 0)

  • LOAD13603ARR3(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → COND_LOAD13603ARR3(&&(&&(&&(>(i7628, 0), <(i7628, i2)), >(i7630, 0)), >(+(i7628, 1), 0)), java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
    • ([1] + i7628[9] ≥ 0∧i7630[9] ≥ 0∧i7628[9] ≥ 0∧i2[9] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])), ≥)∧[bni_68] = 0∧0 = 0∧[(-1)Bound*bni_68 + bni_68] + [bni_68]i2[9] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_69] ≥ 0)

  • COND_LOAD13603ARR3(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), +(i7628, 1), i58, +(i7630, -1))
    • ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), +(i7628[10], 1), i58[10], +(i7630[10], -1))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_71] ≥ 0)

  • INC18978(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, i7630) → LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), i8902, i58, +(i7630, -1))
    • ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], +(i7630[11], -1))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_73] ≥ 0)

  • LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → LOAD13603ARR4(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
    • ((UIncreasing(LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_75] ≥ 0)

  • LOAD13603ARR4(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628, 1), 0), <(+(i7628, 1), i2)), >(i7628, 0)), <(i7628, i2)), >(i7630, 0)), >(+(+(i7628, 1), 1), 0)), java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
    • ([2] + i7628[13] ≥ 0∧i7630[13] ≥ 0∧[1] + i2[13] ≥ 0∧i7628[13] ≥ 0∧[1] + i7628[13] ≥ 0∧i2[13] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])), ≥)∧[bni_76] = 0∧0 = 0∧[(-1)Bound*bni_76 + (2)bni_76] + [bni_76]i2[13] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_77] ≥ 0)

  • COND_LOAD13603ARR4(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), +(+(i7628, 1), 1), i58, +(i7630, -1))
    • ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), +(+(i7628[14], 1), 1), i58[14], +(i7630[14], -1))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[2 + (-1)bso_79] ≥ 0)

  • LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → LOAD13603ARR5(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
    • ((UIncreasing(LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_81] ≥ 0)

  • LOAD13603ARR5(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → COND_LOAD13603ARR5(&&(&&(&&(>(i7628, 0), <(i7628, i2)), >(i7630, 0)), >(+(i7628, 1), 0)), java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
    • ([1] + i7628[16] ≥ 0∧i7630[16] ≥ 0∧i7628[16] ≥ 0∧i2[16] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])), ≥)∧[bni_82] = 0∧0 = 0∧[(-1)Bound*bni_82 + bni_82] + [bni_82]i2[16] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_83] ≥ 0)

  • COND_LOAD13603ARR5(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → INC15077(java.lang.Object(ARRAY(i2, a19203data)), +(i7628, 1), i58, i7630)
    • ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), +(i7628[17], 1), i58[17], i7630[17])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_85] ≥ 0)

  • JMP15126'(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630) → INC15077(java.lang.Object(ARRAY(i2, a19203data)), i7710, i58, i7630)
    • ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_87] ≥ 0)

  • LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → LOAD13603ARR6(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
    • ((UIncreasing(LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_89] ≥ 0)

  • LOAD13603ARR6(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996, 0), >(i7628, 0)), <(i7628, i2)), >(i7630, 0)), >(+(i7628, 1), 0)), java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
    • ([1] + i7628[20] ≥ 0∧i7630[20] ≥ 0∧i2[20] ≥ 0∧i7996[20] ≥ 0∧i7628[20] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧[bni_90] = 0∧0 = 0∧[(-1)Bound*bni_90] + [bni_90]i2[20] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_91] ≥ 0)

  • COND_LOAD13603ARR6(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → INC15077(java.lang.Object(ARRAY(i2, a19203data)), +(i7628, 1), i58, i7630)
    • ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), +(i7628[21], 1), i58[21], i7630[21])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_93] ≥ 0)

  • JMP18886'(java.lang.Object(ARRAY(i2, a19203data)), i8946, i58, i7630) → INC18978(java.lang.Object(ARRAY(i2, a19203data)), i8946, i58, i7630)
    • ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_95] ≥ 0)

  • LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → LOAD13603ARR7(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
    • ((UIncreasing(LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_97] ≥ 0)

  • LOAD13603ARR7(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628, 1), 0), <(+(i7628, 1), i2)), >(i7996, 0)), >(i7628, 0)), <(i7628, i2)), >(i7630, 0)), >(+(+(i7628, 1), 1), 0)), java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
    • ([2] + i7628[24] ≥ 0∧i7630[24] ≥ 0∧[1] + i2[24] ≥ 0∧i7628[24] ≥ 0∧i7996[24] ≥ 0∧[1] + i7628[24] ≥ 0∧i2[24] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧[bni_98] = 0∧0 = 0∧[bni_98 + (-1)Bound*bni_98] + [bni_98]i2[24] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_99] ≥ 0)

  • COND_LOAD13603ARR7(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → INC18978(java.lang.Object(ARRAY(i2, a19203data)), +(+(i7628, 1), 1), i58, i7630)
    • ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[25], a19203data[25])), +(+(i7628[25], 1), 1), i58[25], i7630[25])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_101] ≥ 0)

  • LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → LOAD13603ARR8(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
    • ((UIncreasing(LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_103] ≥ 0)

  • LOAD13603ARR8(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628, 1), 0), <(+(i7628, 1), i2)), >(i7628, 0)), <(i7628, i2)), >(i7630, 0)), >(+(+(i7628, 1), 1), 0)), java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630)
    • ([2] + i7628[27] ≥ 0∧i7630[27] ≥ 0∧[1] + i2[27] ≥ 0∧i7628[27] ≥ 0∧[1] + i7628[27] ≥ 0∧i2[27] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])), ≥)∧[bni_104] = 0∧0 = 0∧[(-1)Bound*bni_104 + (2)bni_104] + [bni_104]i2[27] ≥ 0∧0 = 0∧0 = 0∧[(-1)bso_105] ≥ 0)

  • COND_LOAD13603ARR8(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → INC18978(java.lang.Object(ARRAY(i2, a19203data)), +(+(i7628, 1), 1), i58, i7630)
    • ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[28], a19203data[28])), +(+(i7628[28], 1), 1), i58[28], i7630[28])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[2 + (-1)bso_107] ≥ 0)

  • LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → LOAD13603ARR9(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
    • ((UIncreasing(LOAD13603ARR9(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29], java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_109] ≥ 0)

  • LOAD13603ARR9(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996, 0), >(i7628, 0)), <(i7628, i2)), >(i7630, 0)), >(+(i7628, 1), 0)), java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
    • ([1] + i7628[30] ≥ 0∧i7630[30] ≥ 0∧i2[30] ≥ 0∧i7996[30] ≥ 0∧i7628[30] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧[bni_110] = 0∧0 = 0∧[(-1)Bound*bni_110] + [bni_110]i2[30] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_111] ≥ 0)

  • COND_LOAD13603ARR9(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → JMP15126'(java.lang.Object(ARRAY(i2, a19203data)), +(i7628, 1), i58, i7630)
    • ((UIncreasing(JMP15126'(java.lang.Object(ARRAY(i2[31], a19203data[31])), +(i7628[31], 1), i58[31], i7630[31])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_113] ≥ 0)

  • LOAD13603(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630) → LOAD13603ARR10(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
    • ((UIncreasing(LOAD13603ARR10(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32], java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_115] ≥ 0)

  • LOAD13603ARR10(java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628, 1), 0), <(+(i7628, 1), i2)), >(i7996, 0)), >(i7628, 0)), <(i7628, i2)), >(i7630, 0)), >(+(+(i7628, 1), 1), 0)), java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737)))
    • ([2] + i7628[33] ≥ 0∧i7630[33] ≥ 0∧[1] + i2[33] ≥ 0∧i7628[33] ≥ 0∧i7996[33] ≥ 0∧[1] + i7628[33] ≥ 0∧i2[33] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧[bni_116] = 0∧0 = 0∧[bni_116 + (-1)Bound*bni_116] + [bni_116]i2[33] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_117] ≥ 0)

  • COND_LOAD13603ARR10(TRUE, java.lang.Object(ARRAY(i2, a19203data)), i7628, i58, i7630, java.lang.Object(java.lang.String(i7996, i7860, i7862, a19737))) → JMP18886'(java.lang.Object(ARRAY(i2, a19203data)), +(+(i7628, 1), 1), i58, i7630)
    • ((UIncreasing(JMP18886'(java.lang.Object(ARRAY(i2[34], a19203data[34])), +(+(i7628[34], 1), 1), i58[34], i7630[34])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_119] ≥ 0)




The constraints for P> respective Pbound are constructed from P where we just replace every occurence of "t ≥ s" in P by "t > s" respective "t ≥ c". Here c stands for the fresh constant used for Pbound.
Using the following integer polynomial ordering the resulting constraints can be solved
Polynomial interpretation over integers[POLO]:

POL(TRUE) = 0   
POL(FALSE) = 0   
POL(LOAD715(x1, x2, x3)) = [-1] + x3 + [-1]x2 + [-1]x1   
POL(java.lang.Object(x1)) = x1   
POL(ARRAY(x1, x2)) = [-1] + [-1]x1   
POL(LOAD715ARR1(x1, x2, x3)) = [-1] + x3 + [-1]x2 + [-1]x1   
POL(COND_LOAD715ARR1(x1, x2, x3, x4)) = [-1] + x4 + [-1]x3 + [-1]x2   
POL(&&(x1, x2)) = [-1]   
POL(>(x1, x2)) = [-1]   
POL(0) = 0   
POL(<(x1, x2)) = [-1]   
POL(+(x1, x2)) = x1 + x2   
POL(1) = [1]   
POL(-1) = [-1]   
POL(LOAD13603(x1, x2, x3, x4)) = [-1] + x3 + [-1]x2 + [-1]x1   
POL(LOAD715ARR2(x1, x2, x3, x4)) = [-1] + [-1]x4 + x3 + [-1]x2 + [-1]x1   
POL(java.lang.String(x1, x2, x3, x4)) = [1]   
POL(COND_LOAD715ARR2(x1, x2, x3, x4, x5)) = [-1] + [-1]x5 + x4 + [-1]x3 + [-1]x2   
POL(INC15077(x1, x2, x3, x4)) = [-1] + x3 + [-1]x2 + [-1]x1   
POL(LOAD13603ARR3(x1, x2, x3, x4)) = [-1] + x3 + [-1]x2 + [-1]x1   
POL(COND_LOAD13603ARR3(x1, x2, x3, x4, x5)) = [-1] + x4 + [-1]x3 + [-1]x2   
POL(INC18978(x1, x2, x3, x4)) = [-1] + x3 + [-1]x2 + [-1]x1   
POL(LOAD13603ARR4(x1, x2, x3, x4)) = [-1] + x3 + [-1]x2 + [-1]x1   
POL(COND_LOAD13603ARR4(x1, x2, x3, x4, x5)) = [-1] + x4 + [-1]x3 + [-1]x2   
POL(LOAD13603ARR5(x1, x2, x3, x4)) = [-1] + x3 + [-1]x2 + [-1]x1   
POL(COND_LOAD13603ARR5(x1, x2, x3, x4, x5)) = [-1] + x4 + [-1]x3 + [-1]x2   
POL(JMP15126'(x1, x2, x3, x4)) = [-1] + x3 + [-1]x2 + [-1]x1   
POL(LOAD13603ARR6(x1, x2, x3, x4, x5)) = [-1] + [-1]x5 + x3 + [-1]x2 + [-1]x1   
POL(COND_LOAD13603ARR6(x1, x2, x3, x4, x5, x6)) = [-1] + [-1]x6 + x4 + [-1]x3 + [-1]x2   
POL(JMP18886'(x1, x2, x3, x4)) = [-1] + x3 + [-1]x2 + [-1]x1   
POL(LOAD13603ARR7(x1, x2, x3, x4, x5)) = [-1] + [-1]x5 + x3 + [-1]x2 + [-1]x1   
POL(COND_LOAD13603ARR7(x1, x2, x3, x4, x5, x6)) = [-1] + [-1]x6 + x4 + [-1]x3 + [-1]x2   
POL(LOAD13603ARR8(x1, x2, x3, x4)) = [-1] + x3 + [-1]x2 + [-1]x1   
POL(COND_LOAD13603ARR8(x1, x2, x3, x4, x5)) = [-1] + x4 + [-1]x3 + [-1]x2   
POL(LOAD13603ARR9(x1, x2, x3, x4, x5)) = [-1] + [-1]x5 + x3 + [-1]x2 + [-1]x1   
POL(COND_LOAD13603ARR9(x1, x2, x3, x4, x5, x6)) = [-1] + [-1]x6 + x4 + [-1]x3 + [-1]x2   
POL(LOAD13603ARR10(x1, x2, x3, x4, x5)) = [-1] + [-1]x5 + x3 + [-1]x2 + [-1]x1   
POL(COND_LOAD13603ARR10(x1, x2, x3, x4, x5, x6)) = [-1] + [-1]x6 + x4 + [-1]x3 + [-1]x2   

The following pairs are in P>:

COND_LOAD715ARR1(TRUE, java.lang.Object(ARRAY(i2[2], a694data[2])), i56[2], i58[2]) → LOAD715(java.lang.Object(ARRAY(i2[2], a694data[2])), +(i56[2], 1), +(i58[2], -1))
LOAD13603(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], i58[3], 0) → LOAD715(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], +(i58[3], -1))
LOAD715(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4]) → LOAD715ARR2(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4], java.lang.Object(java.lang.String(i109[4], i86[4], i88[4], a823[4])))
COND_LOAD715ARR2(TRUE, java.lang.Object(ARRAY(i2[6], a694data[6])), i56[6], i58[6], java.lang.Object(java.lang.String(i109[6], i86[6], i88[6], a823[6]))) → LOAD13603(java.lang.Object(ARRAY(i2[6], a694data[6])), +(+(i56[6], 1), 1), i58[6], i109[6])
COND_LOAD13603ARR3(TRUE, java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10], i58[10], i7630[10]) → LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), +(i7628[10], 1), i58[10], +(i7630[10], -1))
COND_LOAD13603ARR4(TRUE, java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14], i58[14], i7630[14]) → LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), +(+(i7628[14], 1), 1), i58[14], +(i7630[14], -1))
COND_LOAD13603ARR5(TRUE, java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17], i58[17], i7630[17]) → INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), +(i7628[17], 1), i58[17], i7630[17])
LOAD13603(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19]) → LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])))
LOAD13603(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23]) → LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))
COND_LOAD13603ARR7(TRUE, java.lang.Object(ARRAY(i2[25], a19203data[25])), i7628[25], i58[25], i7630[25], java.lang.Object(java.lang.String(i7996[25], i7860[25], i7862[25], a19737[25]))) → INC18978(java.lang.Object(ARRAY(i2[25], a19203data[25])), +(+(i7628[25], 1), 1), i58[25], i7630[25])
COND_LOAD13603ARR8(TRUE, java.lang.Object(ARRAY(i2[28], a19203data[28])), i7628[28], i58[28], i7630[28]) → INC18978(java.lang.Object(ARRAY(i2[28], a19203data[28])), +(+(i7628[28], 1), 1), i58[28], i7630[28])
LOAD13603(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29]) → LOAD13603ARR9(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29], java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29])))
LOAD13603(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32]) → LOAD13603ARR10(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32], java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32])))
COND_LOAD13603ARR10(TRUE, java.lang.Object(ARRAY(i2[34], a19203data[34])), i7628[34], i58[34], i7630[34], java.lang.Object(java.lang.String(i7996[34], i7860[34], i7862[34], a19737[34]))) → JMP18886'(java.lang.Object(ARRAY(i2[34], a19203data[34])), +(+(i7628[34], 1), 1), i58[34], i7630[34])

The following pairs are in Pbound:

LOAD715ARR1(java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1]) → COND_LOAD715ARR1(&&(&&(&&(>(i56[1], 0), <(i56[1], i2[1])), >(i58[1], 0)), >(+(i56[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])
LOAD715ARR2(java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5]))) → COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0)), java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))

The following pairs are in P:

LOAD715(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0]) → LOAD715ARR1(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])
LOAD715ARR1(java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1]) → COND_LOAD715ARR1(&&(&&(&&(>(i56[1], 0), <(i56[1], i2[1])), >(i58[1], 0)), >(+(i56[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])
LOAD715ARR2(java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5]))) → COND_LOAD715ARR2(&&(&&(&&(&&(&&(&&(>(+(i56[5], 1), 0), <(+(i56[5], 1), i2[5])), >(i109[5], 0)), >(i56[5], 0)), <(i56[5], i2[5])), >(i58[5], 0)), >(+(+(i56[5], 1), 1), 0)), java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))
INC15077(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7]) → LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], +(i7630[7], -1))
LOAD13603(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8]) → LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])
LOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9]) → COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])
INC18978(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11]) → LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], +(i7630[11], -1))
LOAD13603(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12]) → LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])
LOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13]) → COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])
LOAD13603(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15]) → LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])
LOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16]) → COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])
JMP15126'(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18]) → INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])
LOAD13603ARR6(java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20]))) → COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))
COND_LOAD13603ARR6(TRUE, java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21], i58[21], i7630[21], java.lang.Object(java.lang.String(i7996[21], i7860[21], i7862[21], a19737[21]))) → INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), +(i7628[21], 1), i58[21], i7630[21])
JMP18886'(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22]) → INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])
LOAD13603ARR7(java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24]))) → COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))
LOAD13603(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26]) → LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])
LOAD13603ARR8(java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27]) → COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])
LOAD13603ARR9(java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30]))) → COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))
COND_LOAD13603ARR9(TRUE, java.lang.Object(ARRAY(i2[31], a19203data[31])), i7628[31], i58[31], i7630[31], java.lang.Object(java.lang.String(i7996[31], i7860[31], i7862[31], a19737[31]))) → JMP15126'(java.lang.Object(ARRAY(i2[31], a19203data[31])), +(i7628[31], 1), i58[31], i7630[31])
LOAD13603ARR10(java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33]))) → COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))

There are no usable rules.

(28) Complex Obligation (AND)

(29) Obligation:

IDP problem:
The following function symbols are pre-defined:
!=~Neq: (Integer, Integer) -> Boolean
*~Mul: (Integer, Integer) -> Integer
>=~Ge: (Integer, Integer) -> Boolean
-1~UnaryMinus: (Integer) -> Integer
|~Bwor: (Integer, Integer) -> Integer
/~Div: (Integer, Integer) -> Integer
=~Eq: (Integer, Integer) -> Boolean
~Bwxor: (Integer, Integer) -> Integer
||~Lor: (Boolean, Boolean) -> Boolean
!~Lnot: (Boolean) -> Boolean
<~Lt: (Integer, Integer) -> Boolean
-~Sub: (Integer, Integer) -> Integer
<=~Le: (Integer, Integer) -> Boolean
>~Gt: (Integer, Integer) -> Boolean
~~Bwnot: (Integer) -> Integer
%~Mod: (Integer, Integer) -> Integer
&~Bwand: (Integer, Integer) -> Integer
+~Add: (Integer, Integer) -> Integer
&&~Land: (Boolean, Boolean) -> Boolean


The following domains are used:

Boolean, Integer


R is empty.

The integer pair graph contains the following rules and edges:
(0): LOAD715(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0]) → LOAD715ARR1(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])
(1): LOAD715ARR1(java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1]) → COND_LOAD715ARR1(i56[1] > 0 && i56[1] < i2[1] && i58[1] > 0 && i56[1] + 1 > 0, java.lang.Object(ARRAY(i2[1], a694data[1])), i56[1], i58[1])
(5): LOAD715ARR2(java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5]))) → COND_LOAD715ARR2(i56[5] + 1 > 0 && i56[5] + 1 < i2[5] && i109[5] > 0 && i56[5] > 0 && i56[5] < i2[5] && i58[5] > 0 && i56[5] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[5], a694data[5])), i56[5], i58[5], java.lang.Object(java.lang.String(i109[5], i86[5], i88[5], a823[5])))
(7): INC15077(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7]) → LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7] + -1)
(8): LOAD13603(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8]) → LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])
(9): LOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9]) → COND_LOAD13603ARR3(i7628[9] > 0 && i7628[9] < i2[9] && i7630[9] > 0 && i7628[9] + 1 > 0, java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])
(11): INC18978(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11]) → LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11] + -1)
(12): LOAD13603(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12]) → LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])
(13): LOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13]) → COND_LOAD13603ARR4(i7628[13] + 1 > 0 && i7628[13] + 1 < i2[13] && i7628[13] > 0 && i7628[13] < i2[13] && i7630[13] > 0 && i7628[13] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])
(15): LOAD13603(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15]) → LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])
(16): LOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16]) → COND_LOAD13603ARR5(i7628[16] > 0 && i7628[16] < i2[16] && i7630[16] > 0 && i7628[16] + 1 > 0, java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])
(18): JMP15126'(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18]) → INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])
(20): LOAD13603ARR6(java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20]))) → COND_LOAD13603ARR6(i7996[20] > 0 && i7628[20] > 0 && i7628[20] < i2[20] && i7630[20] > 0 && i7628[20] + 1 > 0, java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))
(21): COND_LOAD13603ARR6(TRUE, java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21], i58[21], i7630[21], java.lang.Object(java.lang.String(i7996[21], i7860[21], i7862[21], a19737[21]))) → INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21] + 1, i58[21], i7630[21])
(22): JMP18886'(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22]) → INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])
(24): LOAD13603ARR7(java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24]))) → COND_LOAD13603ARR7(i7628[24] + 1 > 0 && i7628[24] + 1 < i2[24] && i7996[24] > 0 && i7628[24] > 0 && i7628[24] < i2[24] && i7630[24] > 0 && i7628[24] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))
(26): LOAD13603(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26]) → LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])
(27): LOAD13603ARR8(java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27]) → COND_LOAD13603ARR8(i7628[27] + 1 > 0 && i7628[27] + 1 < i2[27] && i7628[27] > 0 && i7628[27] < i2[27] && i7630[27] > 0 && i7628[27] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])
(30): LOAD13603ARR9(java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30]))) → COND_LOAD13603ARR9(i7996[30] > 0 && i7628[30] > 0 && i7628[30] < i2[30] && i7630[30] > 0 && i7628[30] + 1 > 0, java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))
(31): COND_LOAD13603ARR9(TRUE, java.lang.Object(ARRAY(i2[31], a19203data[31])), i7628[31], i58[31], i7630[31], java.lang.Object(java.lang.String(i7996[31], i7860[31], i7862[31], a19737[31]))) → JMP15126'(java.lang.Object(ARRAY(i2[31], a19203data[31])), i7628[31] + 1, i58[31], i7630[31])
(33): LOAD13603ARR10(java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33]))) → COND_LOAD13603ARR10(i7628[33] + 1 > 0 && i7628[33] + 1 < i2[33] && i7996[33] > 0 && i7628[33] > 0 && i7628[33] < i2[33] && i7630[33] > 0 && i7628[33] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))

(0) -> (1), if ((i58[0]* i58[1])∧(i56[0]* i56[1])∧((i2[0]* i2[1])∧(a694data[0]* a694data[1])))


(18) -> (7), if ((i7710[18]* i7710[7])∧((i2[18]* i2[7])∧(a19203data[18]* a19203data[7]))∧(i58[18]* i58[7])∧(i7630[18]* i7630[7]))


(21) -> (7), if (((i2[21]* i2[7])∧(a19203data[21]* a19203data[7]))∧(i7628[21] + 1* i7710[7])∧(i58[21]* i58[7])∧(i7630[21]* i7630[7]))


(7) -> (8), if ((i58[7]* i58[8])∧(i7630[7] + -1* i7630[8])∧((i2[7]* i2[8])∧(a19203data[7]* a19203data[8]))∧(i7710[7]* i7628[8]))


(11) -> (8), if ((i8902[11]* i7628[8])∧((i2[11]* i2[8])∧(a19203data[11]* a19203data[8]))∧(i7630[11] + -1* i7630[8])∧(i58[11]* i58[8]))


(8) -> (9), if (((i2[8]* i2[9])∧(a19203data[8]* a19203data[9]))∧(i58[8]* i58[9])∧(i7630[8]* i7630[9])∧(i7628[8]* i7628[9]))


(22) -> (11), if ((i58[22]* i58[11])∧((i2[22]* i2[11])∧(a19203data[22]* a19203data[11]))∧(i8946[22]* i8902[11])∧(i7630[22]* i7630[11]))


(7) -> (12), if ((i7710[7]* i7628[12])∧(i58[7]* i58[12])∧((i2[7]* i2[12])∧(a19203data[7]* a19203data[12]))∧(i7630[7] + -1* i7630[12]))


(11) -> (12), if ((i58[11]* i58[12])∧(i8902[11]* i7628[12])∧(i7630[11] + -1* i7630[12])∧((i2[11]* i2[12])∧(a19203data[11]* a19203data[12])))


(12) -> (13), if ((i7630[12]* i7630[13])∧(i58[12]* i58[13])∧(i7628[12]* i7628[13])∧((i2[12]* i2[13])∧(a19203data[12]* a19203data[13])))


(7) -> (15), if ((i7710[7]* i7628[15])∧((i2[7]* i2[15])∧(a19203data[7]* a19203data[15]))∧(i7630[7] + -1* i7630[15])∧(i58[7]* i58[15]))


(11) -> (15), if ((i8902[11]* i7628[15])∧(i7630[11] + -1* i7630[15])∧((i2[11]* i2[15])∧(a19203data[11]* a19203data[15]))∧(i58[11]* i58[15]))


(15) -> (16), if ((i58[15]* i58[16])∧(i7628[15]* i7628[16])∧((i2[15]* i2[16])∧(a19203data[15]* a19203data[16]))∧(i7630[15]* i7630[16]))


(31) -> (18), if ((i58[31]* i58[18])∧((i2[31]* i2[18])∧(a19203data[31]* a19203data[18]))∧(i7630[31]* i7630[18])∧(i7628[31] + 1* i7710[18]))


(20) -> (21), if ((i7630[20]* i7630[21])∧(i7628[20]* i7628[21])∧((i2[20]* i2[21])∧(a19203data[20]* a19203data[21]))∧(i58[20]* i58[21])∧(i7996[20] > 0 && i7628[20] > 0 && i7628[20] < i2[20] && i7630[20] > 0 && i7628[20] + 1 > 0* TRUE)∧((i7996[20]* i7996[21])∧(i7860[20]* i7860[21])∧(i7862[20]* i7862[21])∧(a19737[20]* a19737[21])))


(7) -> (26), if ((i7710[7]* i7628[26])∧(i58[7]* i58[26])∧((i2[7]* i2[26])∧(a19203data[7]* a19203data[26]))∧(i7630[7] + -1* i7630[26]))


(11) -> (26), if ((i58[11]* i58[26])∧((i2[11]* i2[26])∧(a19203data[11]* a19203data[26]))∧(i8902[11]* i7628[26])∧(i7630[11] + -1* i7630[26]))


(26) -> (27), if (((i2[26]* i2[27])∧(a19203data[26]* a19203data[27]))∧(i7628[26]* i7628[27])∧(i7630[26]* i7630[27])∧(i58[26]* i58[27]))


(30) -> (31), if ((i58[30]* i58[31])∧(i7628[30]* i7628[31])∧((i2[30]* i2[31])∧(a19203data[30]* a19203data[31]))∧(i7996[30] > 0 && i7628[30] > 0 && i7628[30] < i2[30] && i7630[30] > 0 && i7628[30] + 1 > 0* TRUE)∧((i7996[30]* i7996[31])∧(i7860[30]* i7860[31])∧(i7862[30]* i7862[31])∧(a19737[30]* a19737[31]))∧(i7630[30]* i7630[31]))



The set Q consists of the following terms:
Load715(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR1(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Cond_Load715ARR1(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR2(java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)))
Cond_Load715ARR2(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)))
Inc15077(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR3(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR3(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Inc18978(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR4(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR4(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR5(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR5(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
JMP15126(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR6(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR6(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
JMP18886(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR7(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR7(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Load13603ARR8(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR8(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR9(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR9(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Load13603ARR10(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR10(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))

(30) IDependencyGraphProof (EQUIVALENT transformation)

The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 21 less nodes.

(31) TRUE

(32) Obligation:

IDP problem:
The following function symbols are pre-defined:
!=~Neq: (Integer, Integer) -> Boolean
*~Mul: (Integer, Integer) -> Integer
>=~Ge: (Integer, Integer) -> Boolean
-1~UnaryMinus: (Integer) -> Integer
|~Bwor: (Integer, Integer) -> Integer
/~Div: (Integer, Integer) -> Integer
=~Eq: (Integer, Integer) -> Boolean
~Bwxor: (Integer, Integer) -> Integer
||~Lor: (Boolean, Boolean) -> Boolean
!~Lnot: (Boolean) -> Boolean
<~Lt: (Integer, Integer) -> Boolean
-~Sub: (Integer, Integer) -> Integer
<=~Le: (Integer, Integer) -> Boolean
>~Gt: (Integer, Integer) -> Boolean
~~Bwnot: (Integer) -> Integer
%~Mod: (Integer, Integer) -> Integer
&~Bwand: (Integer, Integer) -> Integer
+~Add: (Integer, Integer) -> Integer
&&~Land: (Boolean, Boolean) -> Boolean


The following domains are used:

Integer, Boolean


R is empty.

The integer pair graph contains the following rules and edges:
(0): LOAD715(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0]) → LOAD715ARR1(java.lang.Object(ARRAY(i2[0], a694data[0])), i56[0], i58[0])
(2): COND_LOAD715ARR1(TRUE, java.lang.Object(ARRAY(i2[2], a694data[2])), i56[2], i58[2]) → LOAD715(java.lang.Object(ARRAY(i2[2], a694data[2])), i56[2] + 1, i58[2] + -1)
(3): LOAD13603(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], i58[3], 0) → LOAD715(java.lang.Object(ARRAY(i2[3], a19203data[3])), i7628[3], i58[3] + -1)
(4): LOAD715(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4]) → LOAD715ARR2(java.lang.Object(ARRAY(i2[4], a694data[4])), i56[4], i58[4], java.lang.Object(java.lang.String(i109[4], i86[4], i88[4], a823[4])))
(6): COND_LOAD715ARR2(TRUE, java.lang.Object(ARRAY(i2[6], a694data[6])), i56[6], i58[6], java.lang.Object(java.lang.String(i109[6], i86[6], i88[6], a823[6]))) → LOAD13603(java.lang.Object(ARRAY(i2[6], a694data[6])), i56[6] + 1 + 1, i58[6], i109[6])
(7): INC15077(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7]) → LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7] + -1)
(8): LOAD13603(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8]) → LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])
(9): LOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9]) → COND_LOAD13603ARR3(i7628[9] > 0 && i7628[9] < i2[9] && i7630[9] > 0 && i7628[9] + 1 > 0, java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])
(10): COND_LOAD13603ARR3(TRUE, java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10], i58[10], i7630[10]) → LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10] + 1, i58[10], i7630[10] + -1)
(11): INC18978(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11]) → LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11] + -1)
(12): LOAD13603(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12]) → LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])
(13): LOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13]) → COND_LOAD13603ARR4(i7628[13] + 1 > 0 && i7628[13] + 1 < i2[13] && i7628[13] > 0 && i7628[13] < i2[13] && i7630[13] > 0 && i7628[13] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])
(14): COND_LOAD13603ARR4(TRUE, java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14], i58[14], i7630[14]) → LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14] + 1 + 1, i58[14], i7630[14] + -1)
(15): LOAD13603(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15]) → LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])
(16): LOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16]) → COND_LOAD13603ARR5(i7628[16] > 0 && i7628[16] < i2[16] && i7630[16] > 0 && i7628[16] + 1 > 0, java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])
(17): COND_LOAD13603ARR5(TRUE, java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17], i58[17], i7630[17]) → INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17] + 1, i58[17], i7630[17])
(18): JMP15126'(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18]) → INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])
(19): LOAD13603(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19]) → LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])))
(20): LOAD13603ARR6(java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20]))) → COND_LOAD13603ARR6(i7996[20] > 0 && i7628[20] > 0 && i7628[20] < i2[20] && i7630[20] > 0 && i7628[20] + 1 > 0, java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))
(21): COND_LOAD13603ARR6(TRUE, java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21], i58[21], i7630[21], java.lang.Object(java.lang.String(i7996[21], i7860[21], i7862[21], a19737[21]))) → INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21] + 1, i58[21], i7630[21])
(22): JMP18886'(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22]) → INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])
(23): LOAD13603(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23]) → LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))
(24): LOAD13603ARR7(java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24]))) → COND_LOAD13603ARR7(i7628[24] + 1 > 0 && i7628[24] + 1 < i2[24] && i7996[24] > 0 && i7628[24] > 0 && i7628[24] < i2[24] && i7630[24] > 0 && i7628[24] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))
(25): COND_LOAD13603ARR7(TRUE, java.lang.Object(ARRAY(i2[25], a19203data[25])), i7628[25], i58[25], i7630[25], java.lang.Object(java.lang.String(i7996[25], i7860[25], i7862[25], a19737[25]))) → INC18978(java.lang.Object(ARRAY(i2[25], a19203data[25])), i7628[25] + 1 + 1, i58[25], i7630[25])
(26): LOAD13603(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26]) → LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])
(27): LOAD13603ARR8(java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27]) → COND_LOAD13603ARR8(i7628[27] + 1 > 0 && i7628[27] + 1 < i2[27] && i7628[27] > 0 && i7628[27] < i2[27] && i7630[27] > 0 && i7628[27] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])
(28): COND_LOAD13603ARR8(TRUE, java.lang.Object(ARRAY(i2[28], a19203data[28])), i7628[28], i58[28], i7630[28]) → INC18978(java.lang.Object(ARRAY(i2[28], a19203data[28])), i7628[28] + 1 + 1, i58[28], i7630[28])
(29): LOAD13603(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29]) → LOAD13603ARR9(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29], java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29])))
(30): LOAD13603ARR9(java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30]))) → COND_LOAD13603ARR9(i7996[30] > 0 && i7628[30] > 0 && i7628[30] < i2[30] && i7630[30] > 0 && i7628[30] + 1 > 0, java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))
(31): COND_LOAD13603ARR9(TRUE, java.lang.Object(ARRAY(i2[31], a19203data[31])), i7628[31], i58[31], i7630[31], java.lang.Object(java.lang.String(i7996[31], i7860[31], i7862[31], a19737[31]))) → JMP15126'(java.lang.Object(ARRAY(i2[31], a19203data[31])), i7628[31] + 1, i58[31], i7630[31])
(32): LOAD13603(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32]) → LOAD13603ARR10(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32], java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32])))
(33): LOAD13603ARR10(java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33]))) → COND_LOAD13603ARR10(i7628[33] + 1 > 0 && i7628[33] + 1 < i2[33] && i7996[33] > 0 && i7628[33] > 0 && i7628[33] < i2[33] && i7630[33] > 0 && i7628[33] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))
(34): COND_LOAD13603ARR10(TRUE, java.lang.Object(ARRAY(i2[34], a19203data[34])), i7628[34], i58[34], i7630[34], java.lang.Object(java.lang.String(i7996[34], i7860[34], i7862[34], a19737[34]))) → JMP18886'(java.lang.Object(ARRAY(i2[34], a19203data[34])), i7628[34] + 1 + 1, i58[34], i7630[34])

(2) -> (0), if ((i56[2] + 1* i56[0])∧(i58[2] + -1* i58[0])∧((i2[2]* i2[0])∧(a694data[2]* a694data[0])))


(3) -> (0), if (((i2[3]* i2[0])∧(a19203data[3]* a694data[0]))∧(i7628[3]* i56[0])∧(i58[3] + -1* i58[0]))


(6) -> (3), if ((i58[6]* i58[3])∧(i109[6]* 0)∧((i2[6]* i2[3])∧(a694data[6]* a19203data[3]))∧(i56[6] + 1 + 1* i7628[3]))


(7) -> (3), if ((i58[7]* i58[3])∧(i7710[7]* i7628[3])∧((i2[7]* i2[3])∧(a19203data[7]* a19203data[3]))∧(i7630[7] + -1* 0))


(10) -> (3), if ((i58[10]* i58[3])∧(i7628[10] + 1* i7628[3])∧((i2[10]* i2[3])∧(a19203data[10]* a19203data[3]))∧(i7630[10] + -1* 0))


(11) -> (3), if ((i8902[11]* i7628[3])∧(i7630[11] + -1* 0)∧((i2[11]* i2[3])∧(a19203data[11]* a19203data[3]))∧(i58[11]* i58[3]))


(14) -> (3), if (((i2[14]* i2[3])∧(a19203data[14]* a19203data[3]))∧(i7628[14] + 1 + 1* i7628[3])∧(i7630[14] + -1* 0)∧(i58[14]* i58[3]))


(2) -> (4), if ((i58[2] + -1* i58[4])∧((i2[2]* i2[4])∧(a694data[2]* a694data[4]))∧(i56[2] + 1* i56[4]))


(3) -> (4), if ((i58[3] + -1* i58[4])∧((i2[3]* i2[4])∧(a19203data[3]* a694data[4]))∧(i7628[3]* i56[4]))


(17) -> (7), if ((i7630[17]* i7630[7])∧(i7628[17] + 1* i7710[7])∧(i58[17]* i58[7])∧((i2[17]* i2[7])∧(a19203data[17]* a19203data[7])))


(18) -> (7), if ((i7710[18]* i7710[7])∧((i2[18]* i2[7])∧(a19203data[18]* a19203data[7]))∧(i58[18]* i58[7])∧(i7630[18]* i7630[7]))


(21) -> (7), if (((i2[21]* i2[7])∧(a19203data[21]* a19203data[7]))∧(i7628[21] + 1* i7710[7])∧(i58[21]* i58[7])∧(i7630[21]* i7630[7]))


(6) -> (8), if (((i2[6]* i2[8])∧(a694data[6]* a19203data[8]))∧(i58[6]* i58[8])∧(i109[6]* i7630[8])∧(i56[6] + 1 + 1* i7628[8]))


(7) -> (8), if ((i58[7]* i58[8])∧(i7630[7] + -1* i7630[8])∧((i2[7]* i2[8])∧(a19203data[7]* a19203data[8]))∧(i7710[7]* i7628[8]))


(10) -> (8), if ((i7630[10] + -1* i7630[8])∧((i2[10]* i2[8])∧(a19203data[10]* a19203data[8]))∧(i58[10]* i58[8])∧(i7628[10] + 1* i7628[8]))


(11) -> (8), if ((i8902[11]* i7628[8])∧((i2[11]* i2[8])∧(a19203data[11]* a19203data[8]))∧(i7630[11] + -1* i7630[8])∧(i58[11]* i58[8]))


(14) -> (8), if ((i7630[14] + -1* i7630[8])∧(i7628[14] + 1 + 1* i7628[8])∧((i2[14]* i2[8])∧(a19203data[14]* a19203data[8]))∧(i58[14]* i58[8]))


(8) -> (9), if (((i2[8]* i2[9])∧(a19203data[8]* a19203data[9]))∧(i58[8]* i58[9])∧(i7630[8]* i7630[9])∧(i7628[8]* i7628[9]))


(9) -> (10), if ((i58[9]* i58[10])∧(i7628[9] > 0 && i7628[9] < i2[9] && i7630[9] > 0 && i7628[9] + 1 > 0* TRUE)∧((i2[9]* i2[10])∧(a19203data[9]* a19203data[10]))∧(i7628[9]* i7628[10])∧(i7630[9]* i7630[10]))


(22) -> (11), if ((i58[22]* i58[11])∧((i2[22]* i2[11])∧(a19203data[22]* a19203data[11]))∧(i8946[22]* i8902[11])∧(i7630[22]* i7630[11]))


(25) -> (11), if ((i7630[25]* i7630[11])∧((i2[25]* i2[11])∧(a19203data[25]* a19203data[11]))∧(i7628[25] + 1 + 1* i8902[11])∧(i58[25]* i58[11]))


(28) -> (11), if ((i58[28]* i58[11])∧(i7628[28] + 1 + 1* i8902[11])∧((i2[28]* i2[11])∧(a19203data[28]* a19203data[11]))∧(i7630[28]* i7630[11]))


(6) -> (12), if (((i2[6]* i2[12])∧(a694data[6]* a19203data[12]))∧(i58[6]* i58[12])∧(i56[6] + 1 + 1* i7628[12])∧(i109[6]* i7630[12]))


(7) -> (12), if ((i7710[7]* i7628[12])∧(i58[7]* i58[12])∧((i2[7]* i2[12])∧(a19203data[7]* a19203data[12]))∧(i7630[7] + -1* i7630[12]))


(10) -> (12), if ((i58[10]* i58[12])∧((i2[10]* i2[12])∧(a19203data[10]* a19203data[12]))∧(i7630[10] + -1* i7630[12])∧(i7628[10] + 1* i7628[12]))


(11) -> (12), if ((i58[11]* i58[12])∧(i8902[11]* i7628[12])∧(i7630[11] + -1* i7630[12])∧((i2[11]* i2[12])∧(a19203data[11]* a19203data[12])))


(14) -> (12), if ((i7630[14] + -1* i7630[12])∧((i2[14]* i2[12])∧(a19203data[14]* a19203data[12]))∧(i7628[14] + 1 + 1* i7628[12])∧(i58[14]* i58[12]))


(12) -> (13), if ((i7630[12]* i7630[13])∧(i58[12]* i58[13])∧(i7628[12]* i7628[13])∧((i2[12]* i2[13])∧(a19203data[12]* a19203data[13])))


(13) -> (14), if ((i7628[13]* i7628[14])∧((i2[13]* i2[14])∧(a19203data[13]* a19203data[14]))∧(i7628[13] + 1 > 0 && i7628[13] + 1 < i2[13] && i7628[13] > 0 && i7628[13] < i2[13] && i7630[13] > 0 && i7628[13] + 1 + 1 > 0* TRUE)∧(i7630[13]* i7630[14])∧(i58[13]* i58[14]))


(6) -> (15), if ((i109[6]* i7630[15])∧(i58[6]* i58[15])∧((i2[6]* i2[15])∧(a694data[6]* a19203data[15]))∧(i56[6] + 1 + 1* i7628[15]))


(7) -> (15), if ((i7710[7]* i7628[15])∧((i2[7]* i2[15])∧(a19203data[7]* a19203data[15]))∧(i7630[7] + -1* i7630[15])∧(i58[7]* i58[15]))


(10) -> (15), if (((i2[10]* i2[15])∧(a19203data[10]* a19203data[15]))∧(i7630[10] + -1* i7630[15])∧(i7628[10] + 1* i7628[15])∧(i58[10]* i58[15]))


(11) -> (15), if ((i8902[11]* i7628[15])∧(i7630[11] + -1* i7630[15])∧((i2[11]* i2[15])∧(a19203data[11]* a19203data[15]))∧(i58[11]* i58[15]))


(14) -> (15), if ((i58[14]* i58[15])∧(i7628[14] + 1 + 1* i7628[15])∧((i2[14]* i2[15])∧(a19203data[14]* a19203data[15]))∧(i7630[14] + -1* i7630[15]))


(15) -> (16), if ((i58[15]* i58[16])∧(i7628[15]* i7628[16])∧((i2[15]* i2[16])∧(a19203data[15]* a19203data[16]))∧(i7630[15]* i7630[16]))


(16) -> (17), if (((i2[16]* i2[17])∧(a19203data[16]* a19203data[17]))∧(i7628[16]* i7628[17])∧(i7630[16]* i7630[17])∧(i58[16]* i58[17])∧(i7628[16] > 0 && i7628[16] < i2[16] && i7630[16] > 0 && i7628[16] + 1 > 0* TRUE))


(31) -> (18), if ((i58[31]* i58[18])∧((i2[31]* i2[18])∧(a19203data[31]* a19203data[18]))∧(i7630[31]* i7630[18])∧(i7628[31] + 1* i7710[18]))


(6) -> (19), if ((i109[6]* i7630[19])∧(i58[6]* i58[19])∧(i56[6] + 1 + 1* i7628[19])∧((i2[6]* i2[19])∧(a694data[6]* a19203data[19])))


(7) -> (19), if ((i58[7]* i58[19])∧(i7710[7]* i7628[19])∧((i2[7]* i2[19])∧(a19203data[7]* a19203data[19]))∧(i7630[7] + -1* i7630[19]))


(10) -> (19), if ((i58[10]* i58[19])∧((i2[10]* i2[19])∧(a19203data[10]* a19203data[19]))∧(i7630[10] + -1* i7630[19])∧(i7628[10] + 1* i7628[19]))


(11) -> (19), if ((i8902[11]* i7628[19])∧((i2[11]* i2[19])∧(a19203data[11]* a19203data[19]))∧(i7630[11] + -1* i7630[19])∧(i58[11]* i58[19]))


(14) -> (19), if ((i7628[14] + 1 + 1* i7628[19])∧((i2[14]* i2[19])∧(a19203data[14]* a19203data[19]))∧(i7630[14] + -1* i7630[19])∧(i58[14]* i58[19]))


(19) -> (20), if ((i58[19]* i58[20])∧((i2[19]* i2[20])∧(a19203data[19]* a19203data[20]))∧(i7630[19]* i7630[20])∧((i7996[19]* i7996[20])∧(i7860[19]* i7860[20])∧(i7862[19]* i7862[20])∧(a19737[19]* a19737[20]))∧(i7628[19]* i7628[20]))


(20) -> (21), if ((i7630[20]* i7630[21])∧(i7628[20]* i7628[21])∧((i2[20]* i2[21])∧(a19203data[20]* a19203data[21]))∧(i58[20]* i58[21])∧(i7996[20] > 0 && i7628[20] > 0 && i7628[20] < i2[20] && i7630[20] > 0 && i7628[20] + 1 > 0* TRUE)∧((i7996[20]* i7996[21])∧(i7860[20]* i7860[21])∧(i7862[20]* i7862[21])∧(a19737[20]* a19737[21])))


(34) -> (22), if ((i7630[34]* i7630[22])∧(i7628[34] + 1 + 1* i8946[22])∧(i58[34]* i58[22])∧((i2[34]* i2[22])∧(a19203data[34]* a19203data[22])))


(6) -> (23), if (((i2[6]* i2[23])∧(a694data[6]* a19203data[23]))∧(i109[6]* i7630[23])∧(i56[6] + 1 + 1* i7628[23])∧(i58[6]* i58[23]))


(7) -> (23), if (((i2[7]* i2[23])∧(a19203data[7]* a19203data[23]))∧(i58[7]* i58[23])∧(i7630[7] + -1* i7630[23])∧(i7710[7]* i7628[23]))


(10) -> (23), if ((i7630[10] + -1* i7630[23])∧(i58[10]* i58[23])∧((i2[10]* i2[23])∧(a19203data[10]* a19203data[23]))∧(i7628[10] + 1* i7628[23]))


(11) -> (23), if ((i8902[11]* i7628[23])∧(i58[11]* i58[23])∧((i2[11]* i2[23])∧(a19203data[11]* a19203data[23]))∧(i7630[11] + -1* i7630[23]))


(14) -> (23), if (((i2[14]* i2[23])∧(a19203data[14]* a19203data[23]))∧(i7628[14] + 1 + 1* i7628[23])∧(i7630[14] + -1* i7630[23])∧(i58[14]* i58[23]))


(23) -> (24), if ((i7630[23]* i7630[24])∧((i2[23]* i2[24])∧(a19203data[23]* a19203data[24]))∧(i58[23]* i58[24])∧((i7996[23]* i7996[24])∧(i7860[23]* i7860[24])∧(i7862[23]* i7862[24])∧(a19737[23]* a19737[24]))∧(i7628[23]* i7628[24]))


(24) -> (25), if ((i58[24]* i58[25])∧((i7996[24]* i7996[25])∧(i7860[24]* i7860[25])∧(i7862[24]* i7862[25])∧(a19737[24]* a19737[25]))∧((i2[24]* i2[25])∧(a19203data[24]* a19203data[25]))∧(i7628[24]* i7628[25])∧(i7628[24] + 1 > 0 && i7628[24] + 1 < i2[24] && i7996[24] > 0 && i7628[24] > 0 && i7628[24] < i2[24] && i7630[24] > 0 && i7628[24] + 1 + 1 > 0* TRUE)∧(i7630[24]* i7630[25]))


(6) -> (26), if ((i56[6] + 1 + 1* i7628[26])∧(i58[6]* i58[26])∧((i2[6]* i2[26])∧(a694data[6]* a19203data[26]))∧(i109[6]* i7630[26]))


(7) -> (26), if ((i7710[7]* i7628[26])∧(i58[7]* i58[26])∧((i2[7]* i2[26])∧(a19203data[7]* a19203data[26]))∧(i7630[7] + -1* i7630[26]))


(10) -> (26), if (((i2[10]* i2[26])∧(a19203data[10]* a19203data[26]))∧(i7628[10] + 1* i7628[26])∧(i7630[10] + -1* i7630[26])∧(i58[10]* i58[26]))


(11) -> (26), if ((i58[11]* i58[26])∧((i2[11]* i2[26])∧(a19203data[11]* a19203data[26]))∧(i8902[11]* i7628[26])∧(i7630[11] + -1* i7630[26]))


(14) -> (26), if ((i58[14]* i58[26])∧(i7628[14] + 1 + 1* i7628[26])∧((i2[14]* i2[26])∧(a19203data[14]* a19203data[26]))∧(i7630[14] + -1* i7630[26]))


(26) -> (27), if (((i2[26]* i2[27])∧(a19203data[26]* a19203data[27]))∧(i7628[26]* i7628[27])∧(i7630[26]* i7630[27])∧(i58[26]* i58[27]))


(27) -> (28), if ((i7628[27]* i7628[28])∧(i7630[27]* i7630[28])∧(i58[27]* i58[28])∧((i2[27]* i2[28])∧(a19203data[27]* a19203data[28]))∧(i7628[27] + 1 > 0 && i7628[27] + 1 < i2[27] && i7628[27] > 0 && i7628[27] < i2[27] && i7630[27] > 0 && i7628[27] + 1 + 1 > 0* TRUE))


(6) -> (29), if ((i56[6] + 1 + 1* i7628[29])∧(i109[6]* i7630[29])∧((i2[6]* i2[29])∧(a694data[6]* a19203data[29]))∧(i58[6]* i58[29]))


(7) -> (29), if ((i58[7]* i58[29])∧((i2[7]* i2[29])∧(a19203data[7]* a19203data[29]))∧(i7630[7] + -1* i7630[29])∧(i7710[7]* i7628[29]))


(10) -> (29), if ((i7630[10] + -1* i7630[29])∧((i2[10]* i2[29])∧(a19203data[10]* a19203data[29]))∧(i7628[10] + 1* i7628[29])∧(i58[10]* i58[29]))


(11) -> (29), if ((i7630[11] + -1* i7630[29])∧(i8902[11]* i7628[29])∧(i58[11]* i58[29])∧((i2[11]* i2[29])∧(a19203data[11]* a19203data[29])))


(14) -> (29), if ((i7630[14] + -1* i7630[29])∧((i2[14]* i2[29])∧(a19203data[14]* a19203data[29]))∧(i58[14]* i58[29])∧(i7628[14] + 1 + 1* i7628[29]))


(29) -> (30), if (((i2[29]* i2[30])∧(a19203data[29]* a19203data[30]))∧(i7630[29]* i7630[30])∧(i7628[29]* i7628[30])∧(i58[29]* i58[30])∧((i7996[29]* i7996[30])∧(i7860[29]* i7860[30])∧(i7862[29]* i7862[30])∧(a19737[29]* a19737[30])))


(30) -> (31), if ((i58[30]* i58[31])∧(i7628[30]* i7628[31])∧((i2[30]* i2[31])∧(a19203data[30]* a19203data[31]))∧(i7996[30] > 0 && i7628[30] > 0 && i7628[30] < i2[30] && i7630[30] > 0 && i7628[30] + 1 > 0* TRUE)∧((i7996[30]* i7996[31])∧(i7860[30]* i7860[31])∧(i7862[30]* i7862[31])∧(a19737[30]* a19737[31]))∧(i7630[30]* i7630[31]))


(6) -> (32), if ((i58[6]* i58[32])∧(i109[6]* i7630[32])∧(i56[6] + 1 + 1* i7628[32])∧((i2[6]* i2[32])∧(a694data[6]* a19203data[32])))


(7) -> (32), if ((i58[7]* i58[32])∧((i2[7]* i2[32])∧(a19203data[7]* a19203data[32]))∧(i7710[7]* i7628[32])∧(i7630[7] + -1* i7630[32]))


(10) -> (32), if ((i7630[10] + -1* i7630[32])∧(i58[10]* i58[32])∧((i2[10]* i2[32])∧(a19203data[10]* a19203data[32]))∧(i7628[10] + 1* i7628[32]))


(11) -> (32), if ((i8902[11]* i7628[32])∧(i58[11]* i58[32])∧((i2[11]* i2[32])∧(a19203data[11]* a19203data[32]))∧(i7630[11] + -1* i7630[32]))


(14) -> (32), if (((i2[14]* i2[32])∧(a19203data[14]* a19203data[32]))∧(i58[14]* i58[32])∧(i7630[14] + -1* i7630[32])∧(i7628[14] + 1 + 1* i7628[32]))


(32) -> (33), if (((i7996[32]* i7996[33])∧(i7860[32]* i7860[33])∧(i7862[32]* i7862[33])∧(a19737[32]* a19737[33]))∧(i58[32]* i58[33])∧((i2[32]* i2[33])∧(a19203data[32]* a19203data[33]))∧(i7628[32]* i7628[33])∧(i7630[32]* i7630[33]))


(33) -> (34), if ((i7628[33]* i7628[34])∧((i2[33]* i2[34])∧(a19203data[33]* a19203data[34]))∧(i7628[33] + 1 > 0 && i7628[33] + 1 < i2[33] && i7996[33] > 0 && i7628[33] > 0 && i7628[33] < i2[33] && i7630[33] > 0 && i7628[33] + 1 + 1 > 0* TRUE)∧((i7996[33]* i7996[34])∧(i7860[33]* i7860[34])∧(i7862[33]* i7862[34])∧(a19737[33]* a19737[34]))∧(i58[33]* i58[34])∧(i7630[33]* i7630[34]))



The set Q consists of the following terms:
Load715(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR1(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Cond_Load715ARR1(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR2(java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)))
Cond_Load715ARR2(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)))
Inc15077(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR3(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR3(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Inc18978(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR4(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR4(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR5(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR5(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
JMP15126(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR6(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR6(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
JMP18886(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR7(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR7(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Load13603ARR8(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR8(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR9(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR9(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Load13603ARR10(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR10(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))

(33) IDependencyGraphProof (EQUIVALENT transformation)

The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 5 less nodes.

(34) Obligation:

IDP problem:
The following function symbols are pre-defined:
!=~Neq: (Integer, Integer) -> Boolean
*~Mul: (Integer, Integer) -> Integer
>=~Ge: (Integer, Integer) -> Boolean
-1~UnaryMinus: (Integer) -> Integer
|~Bwor: (Integer, Integer) -> Integer
/~Div: (Integer, Integer) -> Integer
=~Eq: (Integer, Integer) -> Boolean
~Bwxor: (Integer, Integer) -> Integer
||~Lor: (Boolean, Boolean) -> Boolean
!~Lnot: (Boolean) -> Boolean
<~Lt: (Integer, Integer) -> Boolean
-~Sub: (Integer, Integer) -> Integer
<=~Le: (Integer, Integer) -> Boolean
>~Gt: (Integer, Integer) -> Boolean
~~Bwnot: (Integer) -> Integer
%~Mod: (Integer, Integer) -> Integer
&~Bwand: (Integer, Integer) -> Integer
+~Add: (Integer, Integer) -> Integer
&&~Land: (Boolean, Boolean) -> Boolean


The following domains are used:

Integer, Boolean


R is empty.

The integer pair graph contains the following rules and edges:
(22): JMP18886'(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22]) → INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])
(34): COND_LOAD13603ARR10(TRUE, java.lang.Object(ARRAY(i2[34], a19203data[34])), i7628[34], i58[34], i7630[34], java.lang.Object(java.lang.String(i7996[34], i7860[34], i7862[34], a19737[34]))) → JMP18886'(java.lang.Object(ARRAY(i2[34], a19203data[34])), i7628[34] + 1 + 1, i58[34], i7630[34])
(33): LOAD13603ARR10(java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33]))) → COND_LOAD13603ARR10(i7628[33] + 1 > 0 && i7628[33] + 1 < i2[33] && i7996[33] > 0 && i7628[33] > 0 && i7628[33] < i2[33] && i7630[33] > 0 && i7628[33] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))
(32): LOAD13603(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32]) → LOAD13603ARR10(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32], java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32])))
(18): JMP15126'(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18]) → INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])
(31): COND_LOAD13603ARR9(TRUE, java.lang.Object(ARRAY(i2[31], a19203data[31])), i7628[31], i58[31], i7630[31], java.lang.Object(java.lang.String(i7996[31], i7860[31], i7862[31], a19737[31]))) → JMP15126'(java.lang.Object(ARRAY(i2[31], a19203data[31])), i7628[31] + 1, i58[31], i7630[31])
(30): LOAD13603ARR9(java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30]))) → COND_LOAD13603ARR9(i7996[30] > 0 && i7628[30] > 0 && i7628[30] < i2[30] && i7630[30] > 0 && i7628[30] + 1 > 0, java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))
(29): LOAD13603(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29]) → LOAD13603ARR9(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29], java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29])))
(28): COND_LOAD13603ARR8(TRUE, java.lang.Object(ARRAY(i2[28], a19203data[28])), i7628[28], i58[28], i7630[28]) → INC18978(java.lang.Object(ARRAY(i2[28], a19203data[28])), i7628[28] + 1 + 1, i58[28], i7630[28])
(27): LOAD13603ARR8(java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27]) → COND_LOAD13603ARR8(i7628[27] + 1 > 0 && i7628[27] + 1 < i2[27] && i7628[27] > 0 && i7628[27] < i2[27] && i7630[27] > 0 && i7628[27] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])
(26): LOAD13603(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26]) → LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])
(11): INC18978(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11]) → LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11] + -1)
(25): COND_LOAD13603ARR7(TRUE, java.lang.Object(ARRAY(i2[25], a19203data[25])), i7628[25], i58[25], i7630[25], java.lang.Object(java.lang.String(i7996[25], i7860[25], i7862[25], a19737[25]))) → INC18978(java.lang.Object(ARRAY(i2[25], a19203data[25])), i7628[25] + 1 + 1, i58[25], i7630[25])
(24): LOAD13603ARR7(java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24]))) → COND_LOAD13603ARR7(i7628[24] + 1 > 0 && i7628[24] + 1 < i2[24] && i7996[24] > 0 && i7628[24] > 0 && i7628[24] < i2[24] && i7630[24] > 0 && i7628[24] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))
(23): LOAD13603(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23]) → LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))
(21): COND_LOAD13603ARR6(TRUE, java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21], i58[21], i7630[21], java.lang.Object(java.lang.String(i7996[21], i7860[21], i7862[21], a19737[21]))) → INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21] + 1, i58[21], i7630[21])
(20): LOAD13603ARR6(java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20]))) → COND_LOAD13603ARR6(i7996[20] > 0 && i7628[20] > 0 && i7628[20] < i2[20] && i7630[20] > 0 && i7628[20] + 1 > 0, java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))
(19): LOAD13603(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19]) → LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])))
(7): INC15077(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7]) → LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7] + -1)
(17): COND_LOAD13603ARR5(TRUE, java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17], i58[17], i7630[17]) → INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17] + 1, i58[17], i7630[17])
(16): LOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16]) → COND_LOAD13603ARR5(i7628[16] > 0 && i7628[16] < i2[16] && i7630[16] > 0 && i7628[16] + 1 > 0, java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])
(15): LOAD13603(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15]) → LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])
(14): COND_LOAD13603ARR4(TRUE, java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14], i58[14], i7630[14]) → LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14] + 1 + 1, i58[14], i7630[14] + -1)
(13): LOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13]) → COND_LOAD13603ARR4(i7628[13] + 1 > 0 && i7628[13] + 1 < i2[13] && i7628[13] > 0 && i7628[13] < i2[13] && i7630[13] > 0 && i7628[13] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])
(12): LOAD13603(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12]) → LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])
(10): COND_LOAD13603ARR3(TRUE, java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10], i58[10], i7630[10]) → LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10] + 1, i58[10], i7630[10] + -1)
(9): LOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9]) → COND_LOAD13603ARR3(i7628[9] > 0 && i7628[9] < i2[9] && i7630[9] > 0 && i7628[9] + 1 > 0, java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])
(8): LOAD13603(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8]) → LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])

(17) -> (7), if ((i7630[17]* i7630[7])∧(i7628[17] + 1* i7710[7])∧(i58[17]* i58[7])∧((i2[17]* i2[7])∧(a19203data[17]* a19203data[7])))


(18) -> (7), if ((i7710[18]* i7710[7])∧((i2[18]* i2[7])∧(a19203data[18]* a19203data[7]))∧(i58[18]* i58[7])∧(i7630[18]* i7630[7]))


(21) -> (7), if (((i2[21]* i2[7])∧(a19203data[21]* a19203data[7]))∧(i7628[21] + 1* i7710[7])∧(i58[21]* i58[7])∧(i7630[21]* i7630[7]))


(7) -> (8), if ((i58[7]* i58[8])∧(i7630[7] + -1* i7630[8])∧((i2[7]* i2[8])∧(a19203data[7]* a19203data[8]))∧(i7710[7]* i7628[8]))


(10) -> (8), if ((i7630[10] + -1* i7630[8])∧((i2[10]* i2[8])∧(a19203data[10]* a19203data[8]))∧(i58[10]* i58[8])∧(i7628[10] + 1* i7628[8]))


(11) -> (8), if ((i8902[11]* i7628[8])∧((i2[11]* i2[8])∧(a19203data[11]* a19203data[8]))∧(i7630[11] + -1* i7630[8])∧(i58[11]* i58[8]))


(14) -> (8), if ((i7630[14] + -1* i7630[8])∧(i7628[14] + 1 + 1* i7628[8])∧((i2[14]* i2[8])∧(a19203data[14]* a19203data[8]))∧(i58[14]* i58[8]))


(8) -> (9), if (((i2[8]* i2[9])∧(a19203data[8]* a19203data[9]))∧(i58[8]* i58[9])∧(i7630[8]* i7630[9])∧(i7628[8]* i7628[9]))


(9) -> (10), if ((i58[9]* i58[10])∧(i7628[9] > 0 && i7628[9] < i2[9] && i7630[9] > 0 && i7628[9] + 1 > 0* TRUE)∧((i2[9]* i2[10])∧(a19203data[9]* a19203data[10]))∧(i7628[9]* i7628[10])∧(i7630[9]* i7630[10]))


(22) -> (11), if ((i58[22]* i58[11])∧((i2[22]* i2[11])∧(a19203data[22]* a19203data[11]))∧(i8946[22]* i8902[11])∧(i7630[22]* i7630[11]))


(25) -> (11), if ((i7630[25]* i7630[11])∧((i2[25]* i2[11])∧(a19203data[25]* a19203data[11]))∧(i7628[25] + 1 + 1* i8902[11])∧(i58[25]* i58[11]))


(28) -> (11), if ((i58[28]* i58[11])∧(i7628[28] + 1 + 1* i8902[11])∧((i2[28]* i2[11])∧(a19203data[28]* a19203data[11]))∧(i7630[28]* i7630[11]))


(7) -> (12), if ((i7710[7]* i7628[12])∧(i58[7]* i58[12])∧((i2[7]* i2[12])∧(a19203data[7]* a19203data[12]))∧(i7630[7] + -1* i7630[12]))


(10) -> (12), if ((i58[10]* i58[12])∧((i2[10]* i2[12])∧(a19203data[10]* a19203data[12]))∧(i7630[10] + -1* i7630[12])∧(i7628[10] + 1* i7628[12]))


(11) -> (12), if ((i58[11]* i58[12])∧(i8902[11]* i7628[12])∧(i7630[11] + -1* i7630[12])∧((i2[11]* i2[12])∧(a19203data[11]* a19203data[12])))


(14) -> (12), if ((i7630[14] + -1* i7630[12])∧((i2[14]* i2[12])∧(a19203data[14]* a19203data[12]))∧(i7628[14] + 1 + 1* i7628[12])∧(i58[14]* i58[12]))


(12) -> (13), if ((i7630[12]* i7630[13])∧(i58[12]* i58[13])∧(i7628[12]* i7628[13])∧((i2[12]* i2[13])∧(a19203data[12]* a19203data[13])))


(13) -> (14), if ((i7628[13]* i7628[14])∧((i2[13]* i2[14])∧(a19203data[13]* a19203data[14]))∧(i7628[13] + 1 > 0 && i7628[13] + 1 < i2[13] && i7628[13] > 0 && i7628[13] < i2[13] && i7630[13] > 0 && i7628[13] + 1 + 1 > 0* TRUE)∧(i7630[13]* i7630[14])∧(i58[13]* i58[14]))


(7) -> (15), if ((i7710[7]* i7628[15])∧((i2[7]* i2[15])∧(a19203data[7]* a19203data[15]))∧(i7630[7] + -1* i7630[15])∧(i58[7]* i58[15]))


(10) -> (15), if (((i2[10]* i2[15])∧(a19203data[10]* a19203data[15]))∧(i7630[10] + -1* i7630[15])∧(i7628[10] + 1* i7628[15])∧(i58[10]* i58[15]))


(11) -> (15), if ((i8902[11]* i7628[15])∧(i7630[11] + -1* i7630[15])∧((i2[11]* i2[15])∧(a19203data[11]* a19203data[15]))∧(i58[11]* i58[15]))


(14) -> (15), if ((i58[14]* i58[15])∧(i7628[14] + 1 + 1* i7628[15])∧((i2[14]* i2[15])∧(a19203data[14]* a19203data[15]))∧(i7630[14] + -1* i7630[15]))


(15) -> (16), if ((i58[15]* i58[16])∧(i7628[15]* i7628[16])∧((i2[15]* i2[16])∧(a19203data[15]* a19203data[16]))∧(i7630[15]* i7630[16]))


(16) -> (17), if (((i2[16]* i2[17])∧(a19203data[16]* a19203data[17]))∧(i7628[16]* i7628[17])∧(i7630[16]* i7630[17])∧(i58[16]* i58[17])∧(i7628[16] > 0 && i7628[16] < i2[16] && i7630[16] > 0 && i7628[16] + 1 > 0* TRUE))


(31) -> (18), if ((i58[31]* i58[18])∧((i2[31]* i2[18])∧(a19203data[31]* a19203data[18]))∧(i7630[31]* i7630[18])∧(i7628[31] + 1* i7710[18]))


(7) -> (19), if ((i58[7]* i58[19])∧(i7710[7]* i7628[19])∧((i2[7]* i2[19])∧(a19203data[7]* a19203data[19]))∧(i7630[7] + -1* i7630[19]))


(10) -> (19), if ((i58[10]* i58[19])∧((i2[10]* i2[19])∧(a19203data[10]* a19203data[19]))∧(i7630[10] + -1* i7630[19])∧(i7628[10] + 1* i7628[19]))


(11) -> (19), if ((i8902[11]* i7628[19])∧((i2[11]* i2[19])∧(a19203data[11]* a19203data[19]))∧(i7630[11] + -1* i7630[19])∧(i58[11]* i58[19]))


(14) -> (19), if ((i7628[14] + 1 + 1* i7628[19])∧((i2[14]* i2[19])∧(a19203data[14]* a19203data[19]))∧(i7630[14] + -1* i7630[19])∧(i58[14]* i58[19]))


(19) -> (20), if ((i58[19]* i58[20])∧((i2[19]* i2[20])∧(a19203data[19]* a19203data[20]))∧(i7630[19]* i7630[20])∧((i7996[19]* i7996[20])∧(i7860[19]* i7860[20])∧(i7862[19]* i7862[20])∧(a19737[19]* a19737[20]))∧(i7628[19]* i7628[20]))


(20) -> (21), if ((i7630[20]* i7630[21])∧(i7628[20]* i7628[21])∧((i2[20]* i2[21])∧(a19203data[20]* a19203data[21]))∧(i58[20]* i58[21])∧(i7996[20] > 0 && i7628[20] > 0 && i7628[20] < i2[20] && i7630[20] > 0 && i7628[20] + 1 > 0* TRUE)∧((i7996[20]* i7996[21])∧(i7860[20]* i7860[21])∧(i7862[20]* i7862[21])∧(a19737[20]* a19737[21])))


(34) -> (22), if ((i7630[34]* i7630[22])∧(i7628[34] + 1 + 1* i8946[22])∧(i58[34]* i58[22])∧((i2[34]* i2[22])∧(a19203data[34]* a19203data[22])))


(7) -> (23), if (((i2[7]* i2[23])∧(a19203data[7]* a19203data[23]))∧(i58[7]* i58[23])∧(i7630[7] + -1* i7630[23])∧(i7710[7]* i7628[23]))


(10) -> (23), if ((i7630[10] + -1* i7630[23])∧(i58[10]* i58[23])∧((i2[10]* i2[23])∧(a19203data[10]* a19203data[23]))∧(i7628[10] + 1* i7628[23]))


(11) -> (23), if ((i8902[11]* i7628[23])∧(i58[11]* i58[23])∧((i2[11]* i2[23])∧(a19203data[11]* a19203data[23]))∧(i7630[11] + -1* i7630[23]))


(14) -> (23), if (((i2[14]* i2[23])∧(a19203data[14]* a19203data[23]))∧(i7628[14] + 1 + 1* i7628[23])∧(i7630[14] + -1* i7630[23])∧(i58[14]* i58[23]))


(23) -> (24), if ((i7630[23]* i7630[24])∧((i2[23]* i2[24])∧(a19203data[23]* a19203data[24]))∧(i58[23]* i58[24])∧((i7996[23]* i7996[24])∧(i7860[23]* i7860[24])∧(i7862[23]* i7862[24])∧(a19737[23]* a19737[24]))∧(i7628[23]* i7628[24]))


(24) -> (25), if ((i58[24]* i58[25])∧((i7996[24]* i7996[25])∧(i7860[24]* i7860[25])∧(i7862[24]* i7862[25])∧(a19737[24]* a19737[25]))∧((i2[24]* i2[25])∧(a19203data[24]* a19203data[25]))∧(i7628[24]* i7628[25])∧(i7628[24] + 1 > 0 && i7628[24] + 1 < i2[24] && i7996[24] > 0 && i7628[24] > 0 && i7628[24] < i2[24] && i7630[24] > 0 && i7628[24] + 1 + 1 > 0* TRUE)∧(i7630[24]* i7630[25]))


(7) -> (26), if ((i7710[7]* i7628[26])∧(i58[7]* i58[26])∧((i2[7]* i2[26])∧(a19203data[7]* a19203data[26]))∧(i7630[7] + -1* i7630[26]))


(10) -> (26), if (((i2[10]* i2[26])∧(a19203data[10]* a19203data[26]))∧(i7628[10] + 1* i7628[26])∧(i7630[10] + -1* i7630[26])∧(i58[10]* i58[26]))


(11) -> (26), if ((i58[11]* i58[26])∧((i2[11]* i2[26])∧(a19203data[11]* a19203data[26]))∧(i8902[11]* i7628[26])∧(i7630[11] + -1* i7630[26]))


(14) -> (26), if ((i58[14]* i58[26])∧(i7628[14] + 1 + 1* i7628[26])∧((i2[14]* i2[26])∧(a19203data[14]* a19203data[26]))∧(i7630[14] + -1* i7630[26]))


(26) -> (27), if (((i2[26]* i2[27])∧(a19203data[26]* a19203data[27]))∧(i7628[26]* i7628[27])∧(i7630[26]* i7630[27])∧(i58[26]* i58[27]))


(27) -> (28), if ((i7628[27]* i7628[28])∧(i7630[27]* i7630[28])∧(i58[27]* i58[28])∧((i2[27]* i2[28])∧(a19203data[27]* a19203data[28]))∧(i7628[27] + 1 > 0 && i7628[27] + 1 < i2[27] && i7628[27] > 0 && i7628[27] < i2[27] && i7630[27] > 0 && i7628[27] + 1 + 1 > 0* TRUE))


(7) -> (29), if ((i58[7]* i58[29])∧((i2[7]* i2[29])∧(a19203data[7]* a19203data[29]))∧(i7630[7] + -1* i7630[29])∧(i7710[7]* i7628[29]))


(10) -> (29), if ((i7630[10] + -1* i7630[29])∧((i2[10]* i2[29])∧(a19203data[10]* a19203data[29]))∧(i7628[10] + 1* i7628[29])∧(i58[10]* i58[29]))


(11) -> (29), if ((i7630[11] + -1* i7630[29])∧(i8902[11]* i7628[29])∧(i58[11]* i58[29])∧((i2[11]* i2[29])∧(a19203data[11]* a19203data[29])))


(14) -> (29), if ((i7630[14] + -1* i7630[29])∧((i2[14]* i2[29])∧(a19203data[14]* a19203data[29]))∧(i58[14]* i58[29])∧(i7628[14] + 1 + 1* i7628[29]))


(29) -> (30), if (((i2[29]* i2[30])∧(a19203data[29]* a19203data[30]))∧(i7630[29]* i7630[30])∧(i7628[29]* i7628[30])∧(i58[29]* i58[30])∧((i7996[29]* i7996[30])∧(i7860[29]* i7860[30])∧(i7862[29]* i7862[30])∧(a19737[29]* a19737[30])))


(30) -> (31), if ((i58[30]* i58[31])∧(i7628[30]* i7628[31])∧((i2[30]* i2[31])∧(a19203data[30]* a19203data[31]))∧(i7996[30] > 0 && i7628[30] > 0 && i7628[30] < i2[30] && i7630[30] > 0 && i7628[30] + 1 > 0* TRUE)∧((i7996[30]* i7996[31])∧(i7860[30]* i7860[31])∧(i7862[30]* i7862[31])∧(a19737[30]* a19737[31]))∧(i7630[30]* i7630[31]))


(7) -> (32), if ((i58[7]* i58[32])∧((i2[7]* i2[32])∧(a19203data[7]* a19203data[32]))∧(i7710[7]* i7628[32])∧(i7630[7] + -1* i7630[32]))


(10) -> (32), if ((i7630[10] + -1* i7630[32])∧(i58[10]* i58[32])∧((i2[10]* i2[32])∧(a19203data[10]* a19203data[32]))∧(i7628[10] + 1* i7628[32]))


(11) -> (32), if ((i8902[11]* i7628[32])∧(i58[11]* i58[32])∧((i2[11]* i2[32])∧(a19203data[11]* a19203data[32]))∧(i7630[11] + -1* i7630[32]))


(14) -> (32), if (((i2[14]* i2[32])∧(a19203data[14]* a19203data[32]))∧(i58[14]* i58[32])∧(i7630[14] + -1* i7630[32])∧(i7628[14] + 1 + 1* i7628[32]))


(32) -> (33), if (((i7996[32]* i7996[33])∧(i7860[32]* i7860[33])∧(i7862[32]* i7862[33])∧(a19737[32]* a19737[33]))∧(i58[32]* i58[33])∧((i2[32]* i2[33])∧(a19203data[32]* a19203data[33]))∧(i7628[32]* i7628[33])∧(i7630[32]* i7630[33]))


(33) -> (34), if ((i7628[33]* i7628[34])∧((i2[33]* i2[34])∧(a19203data[33]* a19203data[34]))∧(i7628[33] + 1 > 0 && i7628[33] + 1 < i2[33] && i7996[33] > 0 && i7628[33] > 0 && i7628[33] < i2[33] && i7630[33] > 0 && i7628[33] + 1 + 1 > 0* TRUE)∧((i7996[33]* i7996[34])∧(i7860[33]* i7860[34])∧(i7862[33]* i7862[34])∧(a19737[33]* a19737[34]))∧(i58[33]* i58[34])∧(i7630[33]* i7630[34]))



The set Q consists of the following terms:
Load715(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR1(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Cond_Load715ARR1(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR2(java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)))
Cond_Load715ARR2(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)))
Inc15077(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR3(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR3(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Inc18978(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR4(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR4(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR5(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR5(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
JMP15126(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR6(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR6(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
JMP18886(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR7(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR7(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Load13603ARR8(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR8(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR9(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR9(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Load13603ARR10(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR10(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))

(35) IDPNonInfProof (SOUND transformation)

The constraints were generated the following way:
The DP Problem is simplified using the Induction Calculus [NONINF] with the following steps:
Note that final constraints are written in bold face.


For Pair JMP18886'(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22]) → INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22]) the following chains were created:
  • We consider the chain JMP18886'(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22]) → INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22]), INC18978(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11]) → LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], +(i7630[11], -1)) which results in the following constraint:

    (1)    (i58[22]=i58[11]i2[22]=i2[11]a19203data[22]=a19203data[11]i8946[22]=i8902[11]i7630[22]=i7630[11]JMP18886'(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])≥NonInfC∧JMP18886'(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])≥INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])∧(UIncreasing(INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])), ≥))



    We simplified constraint (1) using rule (IV) which results in the following new constraint:

    (2)    (JMP18886'(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])≥NonInfC∧JMP18886'(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])≥INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])∧(UIncreasing(INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])), ≥))



    We simplified constraint (2) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (3)    ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])), ≥)∧[(-1)bso_33] ≥ 0)



    We simplified constraint (3) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (4)    ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])), ≥)∧[(-1)bso_33] ≥ 0)



    We simplified constraint (4) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (5)    ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])), ≥)∧[(-1)bso_33] ≥ 0)



    We simplified constraint (5) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (6)    ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_33] ≥ 0)







For Pair COND_LOAD13603ARR10(TRUE, java.lang.Object(ARRAY(i2[34], a19203data[34])), i7628[34], i58[34], i7630[34], java.lang.Object(java.lang.String(i7996[34], i7860[34], i7862[34], a19737[34]))) → JMP18886'(java.lang.Object(ARRAY(i2[34], a19203data[34])), +(+(i7628[34], 1), 1), i58[34], i7630[34]) the following chains were created:
  • We consider the chain COND_LOAD13603ARR10(TRUE, java.lang.Object(ARRAY(i2[34], a19203data[34])), i7628[34], i58[34], i7630[34], java.lang.Object(java.lang.String(i7996[34], i7860[34], i7862[34], a19737[34]))) → JMP18886'(java.lang.Object(ARRAY(i2[34], a19203data[34])), +(+(i7628[34], 1), 1), i58[34], i7630[34]) which results in the following constraint:

    (7)    (COND_LOAD13603ARR10(TRUE, java.lang.Object(ARRAY(i2[34], a19203data[34])), i7628[34], i58[34], i7630[34], java.lang.Object(java.lang.String(i7996[34], i7860[34], i7862[34], a19737[34])))≥NonInfC∧COND_LOAD13603ARR10(TRUE, java.lang.Object(ARRAY(i2[34], a19203data[34])), i7628[34], i58[34], i7630[34], java.lang.Object(java.lang.String(i7996[34], i7860[34], i7862[34], a19737[34])))≥JMP18886'(java.lang.Object(ARRAY(i2[34], a19203data[34])), +(+(i7628[34], 1), 1), i58[34], i7630[34])∧(UIncreasing(JMP18886'(java.lang.Object(ARRAY(i2[34], a19203data[34])), +(+(i7628[34], 1), 1), i58[34], i7630[34])), ≥))



    We simplified constraint (7) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (8)    ((UIncreasing(JMP18886'(java.lang.Object(ARRAY(i2[34], a19203data[34])), +(+(i7628[34], 1), 1), i58[34], i7630[34])), ≥)∧[1 + (-1)bso_35] ≥ 0)



    We simplified constraint (8) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (9)    ((UIncreasing(JMP18886'(java.lang.Object(ARRAY(i2[34], a19203data[34])), +(+(i7628[34], 1), 1), i58[34], i7630[34])), ≥)∧[1 + (-1)bso_35] ≥ 0)



    We simplified constraint (9) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (10)    ((UIncreasing(JMP18886'(java.lang.Object(ARRAY(i2[34], a19203data[34])), +(+(i7628[34], 1), 1), i58[34], i7630[34])), ≥)∧[1 + (-1)bso_35] ≥ 0)



    We simplified constraint (10) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (11)    ((UIncreasing(JMP18886'(java.lang.Object(ARRAY(i2[34], a19203data[34])), +(+(i7628[34], 1), 1), i58[34], i7630[34])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_35] ≥ 0)







For Pair LOAD13603ARR10(java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33]))) → COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33]))) the following chains were created:
  • We consider the chain LOAD13603ARR10(java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33]))) → COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33]))), COND_LOAD13603ARR10(TRUE, java.lang.Object(ARRAY(i2[34], a19203data[34])), i7628[34], i58[34], i7630[34], java.lang.Object(java.lang.String(i7996[34], i7860[34], i7862[34], a19737[34]))) → JMP18886'(java.lang.Object(ARRAY(i2[34], a19203data[34])), +(+(i7628[34], 1), 1), i58[34], i7630[34]) which results in the following constraint:

    (12)    (i7628[33]=i7628[34]i2[33]=i2[34]a19203data[33]=a19203data[34]&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0))=TRUEi7996[33]=i7996[34]i7860[33]=i7860[34]i7862[33]=i7862[34]a19737[33]=a19737[34]i58[33]=i58[34]i7630[33]=i7630[34]LOAD13603ARR10(java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))≥NonInfC∧LOAD13603ARR10(java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))≥COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))∧(UIncreasing(COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))), ≥))



    We simplified constraint (12) using rules (IV), (IDP_BOOLEAN) which results in the following new constraint:

    (13)    (>(+(+(i7628[33], 1), 1), 0)=TRUE>(i7630[33], 0)=TRUE<(i7628[33], i2[33])=TRUE>(i7628[33], 0)=TRUE>(i7996[33], 0)=TRUE>(+(i7628[33], 1), 0)=TRUE<(+(i7628[33], 1), i2[33])=TRUELOAD13603ARR10(java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))≥NonInfC∧LOAD13603ARR10(java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))≥COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))∧(UIncreasing(COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))), ≥))



    We simplified constraint (13) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (14)    (i7628[33] + [1] ≥ 0∧i7630[33] + [-1] ≥ 0∧i2[33] + [-1] + [-1]i7628[33] ≥ 0∧i7628[33] + [-1] ≥ 0∧i7996[33] + [-1] ≥ 0∧i7628[33] ≥ 0∧i2[33] + [-2] + [-1]i7628[33] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))), ≥)∧[(-1)Bound*bni_36] + [(-1)bni_36]i7628[33] + [(2)bni_36]i7630[33] + [bni_36]i2[33] ≥ 0∧[3 + (-1)bso_37] ≥ 0)



    We simplified constraint (14) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (15)    (i7628[33] + [1] ≥ 0∧i7630[33] + [-1] ≥ 0∧i2[33] + [-1] + [-1]i7628[33] ≥ 0∧i7628[33] + [-1] ≥ 0∧i7996[33] + [-1] ≥ 0∧i7628[33] ≥ 0∧i2[33] + [-2] + [-1]i7628[33] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))), ≥)∧[(-1)Bound*bni_36] + [(-1)bni_36]i7628[33] + [(2)bni_36]i7630[33] + [bni_36]i2[33] ≥ 0∧[3 + (-1)bso_37] ≥ 0)



    We simplified constraint (15) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (16)    (i7628[33] + [1] ≥ 0∧i7630[33] + [-1] ≥ 0∧i2[33] + [-1] + [-1]i7628[33] ≥ 0∧i7628[33] + [-1] ≥ 0∧i7996[33] + [-1] ≥ 0∧i7628[33] ≥ 0∧i2[33] + [-2] + [-1]i7628[33] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))), ≥)∧[(-1)Bound*bni_36] + [(-1)bni_36]i7628[33] + [(2)bni_36]i7630[33] + [bni_36]i2[33] ≥ 0∧[3 + (-1)bso_37] ≥ 0)



    We simplified constraint (16) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (17)    (i7628[33] + [1] ≥ 0∧i7630[33] + [-1] ≥ 0∧i2[33] + [-1] + [-1]i7628[33] ≥ 0∧i7628[33] + [-1] ≥ 0∧i7996[33] + [-1] ≥ 0∧i7628[33] ≥ 0∧i2[33] + [-2] + [-1]i7628[33] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_36] + [(-1)bni_36]i7628[33] + [(2)bni_36]i7630[33] + [bni_36]i2[33] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[3 + (-1)bso_37] ≥ 0)



    We simplified constraint (17) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (18)    ([2] + i7628[33] ≥ 0∧i7630[33] + [-1] ≥ 0∧i2[33] + [-2] + [-1]i7628[33] ≥ 0∧i7628[33] ≥ 0∧i7996[33] + [-1] ≥ 0∧[1] + i7628[33] ≥ 0∧i2[33] + [-3] + [-1]i7628[33] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_36 + (-1)bni_36] + [(-1)bni_36]i7628[33] + [(2)bni_36]i7630[33] + [bni_36]i2[33] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[3 + (-1)bso_37] ≥ 0)



    We simplified constraint (18) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (19)    ([2] + i7628[33] ≥ 0∧i7630[33] ≥ 0∧i2[33] + [-2] + [-1]i7628[33] ≥ 0∧i7628[33] ≥ 0∧i7996[33] + [-1] ≥ 0∧[1] + i7628[33] ≥ 0∧i2[33] + [-3] + [-1]i7628[33] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_36 + bni_36] + [(-1)bni_36]i7628[33] + [(2)bni_36]i7630[33] + [bni_36]i2[33] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[3 + (-1)bso_37] ≥ 0)



    We simplified constraint (19) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (20)    ([2] + i7628[33] ≥ 0∧i7630[33] ≥ 0∧i2[33] ≥ 0∧i7628[33] ≥ 0∧i7996[33] + [-1] ≥ 0∧[1] + i7628[33] ≥ 0∧[-1] + i2[33] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_36 + (3)bni_36] + [(2)bni_36]i7630[33] + [bni_36]i2[33] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[3 + (-1)bso_37] ≥ 0)



    We simplified constraint (20) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (21)    ([2] + i7628[33] ≥ 0∧i7630[33] ≥ 0∧[1] + i2[33] ≥ 0∧i7628[33] ≥ 0∧i7996[33] + [-1] ≥ 0∧[1] + i7628[33] ≥ 0∧i2[33] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_36 + (4)bni_36] + [(2)bni_36]i7630[33] + [bni_36]i2[33] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[3 + (-1)bso_37] ≥ 0)



    We simplified constraint (21) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (22)    ([2] + i7628[33] ≥ 0∧i7630[33] ≥ 0∧[1] + i2[33] ≥ 0∧i7628[33] ≥ 0∧i7996[33] ≥ 0∧[1] + i7628[33] ≥ 0∧i2[33] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_36 + (4)bni_36] + [(2)bni_36]i7630[33] + [bni_36]i2[33] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[3 + (-1)bso_37] ≥ 0)







For Pair LOAD13603(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32]) → LOAD13603ARR10(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32], java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32]))) the following chains were created:
  • We consider the chain LOAD13603(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32]) → LOAD13603ARR10(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32], java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32]))) which results in the following constraint:

    (23)    (LOAD13603(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32])≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32])≥LOAD13603ARR10(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32], java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32])))∧(UIncreasing(LOAD13603ARR10(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32], java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32])))), ≥))



    We simplified constraint (23) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (24)    ((UIncreasing(LOAD13603ARR10(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32], java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32])))), ≥)∧[(-1)bso_39] ≥ 0)



    We simplified constraint (24) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (25)    ((UIncreasing(LOAD13603ARR10(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32], java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32])))), ≥)∧[(-1)bso_39] ≥ 0)



    We simplified constraint (25) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (26)    ((UIncreasing(LOAD13603ARR10(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32], java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32])))), ≥)∧[(-1)bso_39] ≥ 0)



    We simplified constraint (26) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (27)    ((UIncreasing(LOAD13603ARR10(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32], java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_39] ≥ 0)







For Pair JMP15126'(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18]) → INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18]) the following chains were created:
  • We consider the chain JMP15126'(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18]) → INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18]), INC15077(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7]) → LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], +(i7630[7], -1)) which results in the following constraint:

    (28)    (i7710[18]=i7710[7]i2[18]=i2[7]a19203data[18]=a19203data[7]i58[18]=i58[7]i7630[18]=i7630[7]JMP15126'(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])≥NonInfC∧JMP15126'(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])≥INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])∧(UIncreasing(INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])), ≥))



    We simplified constraint (28) using rule (IV) which results in the following new constraint:

    (29)    (JMP15126'(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])≥NonInfC∧JMP15126'(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])≥INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])∧(UIncreasing(INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])), ≥))



    We simplified constraint (29) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (30)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])), ≥)∧[2 + (-1)bso_41] ≥ 0)



    We simplified constraint (30) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (31)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])), ≥)∧[2 + (-1)bso_41] ≥ 0)



    We simplified constraint (31) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (32)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])), ≥)∧[2 + (-1)bso_41] ≥ 0)



    We simplified constraint (32) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (33)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[2 + (-1)bso_41] ≥ 0)







For Pair COND_LOAD13603ARR9(TRUE, java.lang.Object(ARRAY(i2[31], a19203data[31])), i7628[31], i58[31], i7630[31], java.lang.Object(java.lang.String(i7996[31], i7860[31], i7862[31], a19737[31]))) → JMP15126'(java.lang.Object(ARRAY(i2[31], a19203data[31])), +(i7628[31], 1), i58[31], i7630[31]) the following chains were created:
  • We consider the chain COND_LOAD13603ARR9(TRUE, java.lang.Object(ARRAY(i2[31], a19203data[31])), i7628[31], i58[31], i7630[31], java.lang.Object(java.lang.String(i7996[31], i7860[31], i7862[31], a19737[31]))) → JMP15126'(java.lang.Object(ARRAY(i2[31], a19203data[31])), +(i7628[31], 1), i58[31], i7630[31]) which results in the following constraint:

    (34)    (COND_LOAD13603ARR9(TRUE, java.lang.Object(ARRAY(i2[31], a19203data[31])), i7628[31], i58[31], i7630[31], java.lang.Object(java.lang.String(i7996[31], i7860[31], i7862[31], a19737[31])))≥NonInfC∧COND_LOAD13603ARR9(TRUE, java.lang.Object(ARRAY(i2[31], a19203data[31])), i7628[31], i58[31], i7630[31], java.lang.Object(java.lang.String(i7996[31], i7860[31], i7862[31], a19737[31])))≥JMP15126'(java.lang.Object(ARRAY(i2[31], a19203data[31])), +(i7628[31], 1), i58[31], i7630[31])∧(UIncreasing(JMP15126'(java.lang.Object(ARRAY(i2[31], a19203data[31])), +(i7628[31], 1), i58[31], i7630[31])), ≥))



    We simplified constraint (34) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (35)    ((UIncreasing(JMP15126'(java.lang.Object(ARRAY(i2[31], a19203data[31])), +(i7628[31], 1), i58[31], i7630[31])), ≥)∧[1 + (-1)bso_43] ≥ 0)



    We simplified constraint (35) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (36)    ((UIncreasing(JMP15126'(java.lang.Object(ARRAY(i2[31], a19203data[31])), +(i7628[31], 1), i58[31], i7630[31])), ≥)∧[1 + (-1)bso_43] ≥ 0)



    We simplified constraint (36) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (37)    ((UIncreasing(JMP15126'(java.lang.Object(ARRAY(i2[31], a19203data[31])), +(i7628[31], 1), i58[31], i7630[31])), ≥)∧[1 + (-1)bso_43] ≥ 0)



    We simplified constraint (37) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (38)    ((UIncreasing(JMP15126'(java.lang.Object(ARRAY(i2[31], a19203data[31])), +(i7628[31], 1), i58[31], i7630[31])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_43] ≥ 0)







For Pair LOAD13603ARR9(java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30]))) → COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30]))) the following chains were created:
  • We consider the chain LOAD13603ARR9(java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30]))) → COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30]))), COND_LOAD13603ARR9(TRUE, java.lang.Object(ARRAY(i2[31], a19203data[31])), i7628[31], i58[31], i7630[31], java.lang.Object(java.lang.String(i7996[31], i7860[31], i7862[31], a19737[31]))) → JMP15126'(java.lang.Object(ARRAY(i2[31], a19203data[31])), +(i7628[31], 1), i58[31], i7630[31]) which results in the following constraint:

    (39)    (i58[30]=i58[31]i7628[30]=i7628[31]i2[30]=i2[31]a19203data[30]=a19203data[31]&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0))=TRUEi7996[30]=i7996[31]i7860[30]=i7860[31]i7862[30]=i7862[31]a19737[30]=a19737[31]i7630[30]=i7630[31]LOAD13603ARR9(java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))≥NonInfC∧LOAD13603ARR9(java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))≥COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))∧(UIncreasing(COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))), ≥))



    We simplified constraint (39) using rules (IV), (IDP_BOOLEAN) which results in the following new constraint:

    (40)    (>(+(i7628[30], 1), 0)=TRUE>(i7630[30], 0)=TRUE<(i7628[30], i2[30])=TRUE>(i7996[30], 0)=TRUE>(i7628[30], 0)=TRUELOAD13603ARR9(java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))≥NonInfC∧LOAD13603ARR9(java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))≥COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))∧(UIncreasing(COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))), ≥))



    We simplified constraint (40) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (41)    (i7628[30] ≥ 0∧i7630[30] + [-1] ≥ 0∧i2[30] + [-1] + [-1]i7628[30] ≥ 0∧i7996[30] + [-1] ≥ 0∧i7628[30] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))), ≥)∧[(-1)Bound*bni_44] + [(-1)bni_44]i7628[30] + [(2)bni_44]i7630[30] + [bni_44]i2[30] ≥ 0∧[(-1)bso_45] ≥ 0)



    We simplified constraint (41) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (42)    (i7628[30] ≥ 0∧i7630[30] + [-1] ≥ 0∧i2[30] + [-1] + [-1]i7628[30] ≥ 0∧i7996[30] + [-1] ≥ 0∧i7628[30] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))), ≥)∧[(-1)Bound*bni_44] + [(-1)bni_44]i7628[30] + [(2)bni_44]i7630[30] + [bni_44]i2[30] ≥ 0∧[(-1)bso_45] ≥ 0)



    We simplified constraint (42) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (43)    (i7628[30] ≥ 0∧i7630[30] + [-1] ≥ 0∧i2[30] + [-1] + [-1]i7628[30] ≥ 0∧i7996[30] + [-1] ≥ 0∧i7628[30] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))), ≥)∧[(-1)Bound*bni_44] + [(-1)bni_44]i7628[30] + [(2)bni_44]i7630[30] + [bni_44]i2[30] ≥ 0∧[(-1)bso_45] ≥ 0)



    We simplified constraint (43) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (44)    (i7628[30] ≥ 0∧i7630[30] + [-1] ≥ 0∧i2[30] + [-1] + [-1]i7628[30] ≥ 0∧i7996[30] + [-1] ≥ 0∧i7628[30] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_44] + [(-1)bni_44]i7628[30] + [(2)bni_44]i7630[30] + [bni_44]i2[30] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_45] ≥ 0)



    We simplified constraint (44) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (45)    ([1] + i7628[30] ≥ 0∧i7630[30] + [-1] ≥ 0∧i2[30] + [-2] + [-1]i7628[30] ≥ 0∧i7996[30] + [-1] ≥ 0∧i7628[30] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_44 + (-1)bni_44] + [(-1)bni_44]i7628[30] + [(2)bni_44]i7630[30] + [bni_44]i2[30] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_45] ≥ 0)



    We simplified constraint (45) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (46)    ([1] + i7628[30] ≥ 0∧i7630[30] ≥ 0∧i2[30] + [-2] + [-1]i7628[30] ≥ 0∧i7996[30] + [-1] ≥ 0∧i7628[30] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_44 + bni_44] + [(-1)bni_44]i7628[30] + [(2)bni_44]i7630[30] + [bni_44]i2[30] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_45] ≥ 0)



    We simplified constraint (46) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (47)    ([1] + i7628[30] ≥ 0∧i7630[30] ≥ 0∧i2[30] ≥ 0∧i7996[30] + [-1] ≥ 0∧i7628[30] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_44 + (3)bni_44] + [(2)bni_44]i7630[30] + [bni_44]i2[30] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_45] ≥ 0)



    We simplified constraint (47) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (48)    ([1] + i7628[30] ≥ 0∧i7630[30] ≥ 0∧i2[30] ≥ 0∧i7996[30] ≥ 0∧i7628[30] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_44 + (3)bni_44] + [(2)bni_44]i7630[30] + [bni_44]i2[30] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_45] ≥ 0)







For Pair LOAD13603(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29]) → LOAD13603ARR9(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29], java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29]))) the following chains were created:
  • We consider the chain LOAD13603(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29]) → LOAD13603ARR9(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29], java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29]))) which results in the following constraint:

    (49)    (LOAD13603(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29])≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29])≥LOAD13603ARR9(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29], java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29])))∧(UIncreasing(LOAD13603ARR9(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29], java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29])))), ≥))



    We simplified constraint (49) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (50)    ((UIncreasing(LOAD13603ARR9(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29], java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29])))), ≥)∧[(-1)bso_47] ≥ 0)



    We simplified constraint (50) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (51)    ((UIncreasing(LOAD13603ARR9(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29], java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29])))), ≥)∧[(-1)bso_47] ≥ 0)



    We simplified constraint (51) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (52)    ((UIncreasing(LOAD13603ARR9(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29], java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29])))), ≥)∧[(-1)bso_47] ≥ 0)



    We simplified constraint (52) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (53)    ((UIncreasing(LOAD13603ARR9(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29], java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_47] ≥ 0)







For Pair COND_LOAD13603ARR8(TRUE, java.lang.Object(ARRAY(i2[28], a19203data[28])), i7628[28], i58[28], i7630[28]) → INC18978(java.lang.Object(ARRAY(i2[28], a19203data[28])), +(+(i7628[28], 1), 1), i58[28], i7630[28]) the following chains were created:
  • We consider the chain COND_LOAD13603ARR8(TRUE, java.lang.Object(ARRAY(i2[28], a19203data[28])), i7628[28], i58[28], i7630[28]) → INC18978(java.lang.Object(ARRAY(i2[28], a19203data[28])), +(+(i7628[28], 1), 1), i58[28], i7630[28]) which results in the following constraint:

    (54)    (COND_LOAD13603ARR8(TRUE, java.lang.Object(ARRAY(i2[28], a19203data[28])), i7628[28], i58[28], i7630[28])≥NonInfC∧COND_LOAD13603ARR8(TRUE, java.lang.Object(ARRAY(i2[28], a19203data[28])), i7628[28], i58[28], i7630[28])≥INC18978(java.lang.Object(ARRAY(i2[28], a19203data[28])), +(+(i7628[28], 1), 1), i58[28], i7630[28])∧(UIncreasing(INC18978(java.lang.Object(ARRAY(i2[28], a19203data[28])), +(+(i7628[28], 1), 1), i58[28], i7630[28])), ≥))



    We simplified constraint (54) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (55)    ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[28], a19203data[28])), +(+(i7628[28], 1), 1), i58[28], i7630[28])), ≥)∧[1 + (-1)bso_49] ≥ 0)



    We simplified constraint (55) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (56)    ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[28], a19203data[28])), +(+(i7628[28], 1), 1), i58[28], i7630[28])), ≥)∧[1 + (-1)bso_49] ≥ 0)



    We simplified constraint (56) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (57)    ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[28], a19203data[28])), +(+(i7628[28], 1), 1), i58[28], i7630[28])), ≥)∧[1 + (-1)bso_49] ≥ 0)



    We simplified constraint (57) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (58)    ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[28], a19203data[28])), +(+(i7628[28], 1), 1), i58[28], i7630[28])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_49] ≥ 0)







For Pair LOAD13603ARR8(java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27]) → COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27]) the following chains were created:
  • We consider the chain LOAD13603ARR8(java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27]) → COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27]), COND_LOAD13603ARR8(TRUE, java.lang.Object(ARRAY(i2[28], a19203data[28])), i7628[28], i58[28], i7630[28]) → INC18978(java.lang.Object(ARRAY(i2[28], a19203data[28])), +(+(i7628[28], 1), 1), i58[28], i7630[28]) which results in the following constraint:

    (59)    (i7628[27]=i7628[28]i7630[27]=i7630[28]i58[27]=i58[28]i2[27]=i2[28]a19203data[27]=a19203data[28]&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0))=TRUELOAD13603ARR8(java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])≥NonInfC∧LOAD13603ARR8(java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])≥COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])∧(UIncreasing(COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])), ≥))



    We simplified constraint (59) using rules (IV), (IDP_BOOLEAN) which results in the following new constraint:

    (60)    (>(+(+(i7628[27], 1), 1), 0)=TRUE>(i7630[27], 0)=TRUE<(i7628[27], i2[27])=TRUE>(i7628[27], 0)=TRUE>(+(i7628[27], 1), 0)=TRUE<(+(i7628[27], 1), i2[27])=TRUELOAD13603ARR8(java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])≥NonInfC∧LOAD13603ARR8(java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])≥COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])∧(UIncreasing(COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])), ≥))



    We simplified constraint (60) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (61)    (i7628[27] + [1] ≥ 0∧i7630[27] + [-1] ≥ 0∧i2[27] + [-1] + [-1]i7628[27] ≥ 0∧i7628[27] + [-1] ≥ 0∧i7628[27] ≥ 0∧i2[27] + [-2] + [-1]i7628[27] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])), ≥)∧[(-3)bni_50 + (-1)Bound*bni_50] + [(-1)bni_50]i7628[27] + [(2)bni_50]i7630[27] + [bni_50]i2[27] ≥ 0∧[(-1)bso_51] ≥ 0)



    We simplified constraint (61) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (62)    (i7628[27] + [1] ≥ 0∧i7630[27] + [-1] ≥ 0∧i2[27] + [-1] + [-1]i7628[27] ≥ 0∧i7628[27] + [-1] ≥ 0∧i7628[27] ≥ 0∧i2[27] + [-2] + [-1]i7628[27] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])), ≥)∧[(-3)bni_50 + (-1)Bound*bni_50] + [(-1)bni_50]i7628[27] + [(2)bni_50]i7630[27] + [bni_50]i2[27] ≥ 0∧[(-1)bso_51] ≥ 0)



    We simplified constraint (62) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (63)    (i7628[27] + [1] ≥ 0∧i7630[27] + [-1] ≥ 0∧i2[27] + [-1] + [-1]i7628[27] ≥ 0∧i7628[27] + [-1] ≥ 0∧i7628[27] ≥ 0∧i2[27] + [-2] + [-1]i7628[27] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])), ≥)∧[(-3)bni_50 + (-1)Bound*bni_50] + [(-1)bni_50]i7628[27] + [(2)bni_50]i7630[27] + [bni_50]i2[27] ≥ 0∧[(-1)bso_51] ≥ 0)



    We simplified constraint (63) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (64)    (i7628[27] + [1] ≥ 0∧i7630[27] + [-1] ≥ 0∧i2[27] + [-1] + [-1]i7628[27] ≥ 0∧i7628[27] + [-1] ≥ 0∧i7628[27] ≥ 0∧i2[27] + [-2] + [-1]i7628[27] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])), ≥)∧0 = 0∧[(-3)bni_50 + (-1)Bound*bni_50] + [(-1)bni_50]i7628[27] + [(2)bni_50]i7630[27] + [bni_50]i2[27] ≥ 0∧0 = 0∧[(-1)bso_51] ≥ 0)



    We simplified constraint (64) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (65)    ([2] + i7628[27] ≥ 0∧i7630[27] + [-1] ≥ 0∧i2[27] + [-2] + [-1]i7628[27] ≥ 0∧i7628[27] ≥ 0∧[1] + i7628[27] ≥ 0∧i2[27] + [-3] + [-1]i7628[27] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])), ≥)∧0 = 0∧[(-4)bni_50 + (-1)Bound*bni_50] + [(-1)bni_50]i7628[27] + [(2)bni_50]i7630[27] + [bni_50]i2[27] ≥ 0∧0 = 0∧[(-1)bso_51] ≥ 0)



    We simplified constraint (65) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (66)    ([2] + i7628[27] ≥ 0∧i7630[27] ≥ 0∧i2[27] + [-2] + [-1]i7628[27] ≥ 0∧i7628[27] ≥ 0∧[1] + i7628[27] ≥ 0∧i2[27] + [-3] + [-1]i7628[27] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])), ≥)∧0 = 0∧[(-2)bni_50 + (-1)Bound*bni_50] + [(-1)bni_50]i7628[27] + [(2)bni_50]i7630[27] + [bni_50]i2[27] ≥ 0∧0 = 0∧[(-1)bso_51] ≥ 0)



    We simplified constraint (66) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (67)    ([2] + i7628[27] ≥ 0∧i7630[27] ≥ 0∧i2[27] ≥ 0∧i7628[27] ≥ 0∧[1] + i7628[27] ≥ 0∧[-1] + i2[27] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])), ≥)∧0 = 0∧[(-1)Bound*bni_50] + [(2)bni_50]i7630[27] + [bni_50]i2[27] ≥ 0∧0 = 0∧[(-1)bso_51] ≥ 0)



    We simplified constraint (67) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (68)    ([2] + i7628[27] ≥ 0∧i7630[27] ≥ 0∧[1] + i2[27] ≥ 0∧i7628[27] ≥ 0∧[1] + i7628[27] ≥ 0∧i2[27] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])), ≥)∧0 = 0∧[bni_50 + (-1)Bound*bni_50] + [(2)bni_50]i7630[27] + [bni_50]i2[27] ≥ 0∧0 = 0∧[(-1)bso_51] ≥ 0)







For Pair LOAD13603(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26]) → LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26]) the following chains were created:
  • We consider the chain LOAD13603(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26]) → LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26]), LOAD13603ARR8(java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27]) → COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27]) which results in the following constraint:

    (69)    (i2[26]=i2[27]a19203data[26]=a19203data[27]i7628[26]=i7628[27]i7630[26]=i7630[27]i58[26]=i58[27]LOAD13603(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])≥LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])∧(UIncreasing(LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])), ≥))



    We simplified constraint (69) using rule (IV) which results in the following new constraint:

    (70)    (LOAD13603(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])≥LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])∧(UIncreasing(LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])), ≥))



    We simplified constraint (70) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (71)    ((UIncreasing(LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])), ≥)∧[3 + (-1)bso_53] ≥ 0)



    We simplified constraint (71) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (72)    ((UIncreasing(LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])), ≥)∧[3 + (-1)bso_53] ≥ 0)



    We simplified constraint (72) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (73)    ((UIncreasing(LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])), ≥)∧[3 + (-1)bso_53] ≥ 0)



    We simplified constraint (73) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (74)    ((UIncreasing(LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[3 + (-1)bso_53] ≥ 0)







For Pair INC18978(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11]) → LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], +(i7630[11], -1)) the following chains were created:
  • We consider the chain INC18978(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11]) → LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], +(i7630[11], -1)) which results in the following constraint:

    (75)    (INC18978(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11])≥NonInfC∧INC18978(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11])≥LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], +(i7630[11], -1))∧(UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], +(i7630[11], -1))), ≥))



    We simplified constraint (75) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (76)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], +(i7630[11], -1))), ≥)∧[(-1)bso_55] ≥ 0)



    We simplified constraint (76) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (77)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], +(i7630[11], -1))), ≥)∧[(-1)bso_55] ≥ 0)



    We simplified constraint (77) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (78)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], +(i7630[11], -1))), ≥)∧[(-1)bso_55] ≥ 0)



    We simplified constraint (78) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (79)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], +(i7630[11], -1))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_55] ≥ 0)







For Pair COND_LOAD13603ARR7(TRUE, java.lang.Object(ARRAY(i2[25], a19203data[25])), i7628[25], i58[25], i7630[25], java.lang.Object(java.lang.String(i7996[25], i7860[25], i7862[25], a19737[25]))) → INC18978(java.lang.Object(ARRAY(i2[25], a19203data[25])), +(+(i7628[25], 1), 1), i58[25], i7630[25]) the following chains were created:
  • We consider the chain COND_LOAD13603ARR7(TRUE, java.lang.Object(ARRAY(i2[25], a19203data[25])), i7628[25], i58[25], i7630[25], java.lang.Object(java.lang.String(i7996[25], i7860[25], i7862[25], a19737[25]))) → INC18978(java.lang.Object(ARRAY(i2[25], a19203data[25])), +(+(i7628[25], 1), 1), i58[25], i7630[25]) which results in the following constraint:

    (80)    (COND_LOAD13603ARR7(TRUE, java.lang.Object(ARRAY(i2[25], a19203data[25])), i7628[25], i58[25], i7630[25], java.lang.Object(java.lang.String(i7996[25], i7860[25], i7862[25], a19737[25])))≥NonInfC∧COND_LOAD13603ARR7(TRUE, java.lang.Object(ARRAY(i2[25], a19203data[25])), i7628[25], i58[25], i7630[25], java.lang.Object(java.lang.String(i7996[25], i7860[25], i7862[25], a19737[25])))≥INC18978(java.lang.Object(ARRAY(i2[25], a19203data[25])), +(+(i7628[25], 1), 1), i58[25], i7630[25])∧(UIncreasing(INC18978(java.lang.Object(ARRAY(i2[25], a19203data[25])), +(+(i7628[25], 1), 1), i58[25], i7630[25])), ≥))



    We simplified constraint (80) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (81)    ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[25], a19203data[25])), +(+(i7628[25], 1), 1), i58[25], i7630[25])), ≥)∧[2 + (-1)bso_57] ≥ 0)



    We simplified constraint (81) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (82)    ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[25], a19203data[25])), +(+(i7628[25], 1), 1), i58[25], i7630[25])), ≥)∧[2 + (-1)bso_57] ≥ 0)



    We simplified constraint (82) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (83)    ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[25], a19203data[25])), +(+(i7628[25], 1), 1), i58[25], i7630[25])), ≥)∧[2 + (-1)bso_57] ≥ 0)



    We simplified constraint (83) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (84)    ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[25], a19203data[25])), +(+(i7628[25], 1), 1), i58[25], i7630[25])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[2 + (-1)bso_57] ≥ 0)







For Pair LOAD13603ARR7(java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24]))) → COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24]))) the following chains were created:
  • We consider the chain LOAD13603ARR7(java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24]))) → COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24]))), COND_LOAD13603ARR7(TRUE, java.lang.Object(ARRAY(i2[25], a19203data[25])), i7628[25], i58[25], i7630[25], java.lang.Object(java.lang.String(i7996[25], i7860[25], i7862[25], a19737[25]))) → INC18978(java.lang.Object(ARRAY(i2[25], a19203data[25])), +(+(i7628[25], 1), 1), i58[25], i7630[25]) which results in the following constraint:

    (85)    (i58[24]=i58[25]i7996[24]=i7996[25]i7860[24]=i7860[25]i7862[24]=i7862[25]a19737[24]=a19737[25]i2[24]=i2[25]a19203data[24]=a19203data[25]i7628[24]=i7628[25]&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0))=TRUEi7630[24]=i7630[25]LOAD13603ARR7(java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))≥NonInfC∧LOAD13603ARR7(java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))≥COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))∧(UIncreasing(COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))), ≥))



    We simplified constraint (85) using rules (IV), (IDP_BOOLEAN) which results in the following new constraint:

    (86)    (>(+(+(i7628[24], 1), 1), 0)=TRUE>(i7630[24], 0)=TRUE<(i7628[24], i2[24])=TRUE>(i7628[24], 0)=TRUE>(i7996[24], 0)=TRUE>(+(i7628[24], 1), 0)=TRUE<(+(i7628[24], 1), i2[24])=TRUELOAD13603ARR7(java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))≥NonInfC∧LOAD13603ARR7(java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))≥COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))∧(UIncreasing(COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))), ≥))



    We simplified constraint (86) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (87)    (i7628[24] + [1] ≥ 0∧i7630[24] + [-1] ≥ 0∧i2[24] + [-1] + [-1]i7628[24] ≥ 0∧i7628[24] + [-1] ≥ 0∧i7996[24] + [-1] ≥ 0∧i7628[24] ≥ 0∧i2[24] + [-2] + [-1]i7628[24] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))), ≥)∧[(-1)Bound*bni_58] + [(-1)bni_58]i7628[24] + [(2)bni_58]i7630[24] + [bni_58]i2[24] ≥ 0∧[2 + (-1)bso_59] ≥ 0)



    We simplified constraint (87) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (88)    (i7628[24] + [1] ≥ 0∧i7630[24] + [-1] ≥ 0∧i2[24] + [-1] + [-1]i7628[24] ≥ 0∧i7628[24] + [-1] ≥ 0∧i7996[24] + [-1] ≥ 0∧i7628[24] ≥ 0∧i2[24] + [-2] + [-1]i7628[24] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))), ≥)∧[(-1)Bound*bni_58] + [(-1)bni_58]i7628[24] + [(2)bni_58]i7630[24] + [bni_58]i2[24] ≥ 0∧[2 + (-1)bso_59] ≥ 0)



    We simplified constraint (88) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (89)    (i7628[24] + [1] ≥ 0∧i7630[24] + [-1] ≥ 0∧i2[24] + [-1] + [-1]i7628[24] ≥ 0∧i7628[24] + [-1] ≥ 0∧i7996[24] + [-1] ≥ 0∧i7628[24] ≥ 0∧i2[24] + [-2] + [-1]i7628[24] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))), ≥)∧[(-1)Bound*bni_58] + [(-1)bni_58]i7628[24] + [(2)bni_58]i7630[24] + [bni_58]i2[24] ≥ 0∧[2 + (-1)bso_59] ≥ 0)



    We simplified constraint (89) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (90)    (i7628[24] + [1] ≥ 0∧i7630[24] + [-1] ≥ 0∧i2[24] + [-1] + [-1]i7628[24] ≥ 0∧i7628[24] + [-1] ≥ 0∧i7996[24] + [-1] ≥ 0∧i7628[24] ≥ 0∧i2[24] + [-2] + [-1]i7628[24] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_58] + [(-1)bni_58]i7628[24] + [(2)bni_58]i7630[24] + [bni_58]i2[24] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[2 + (-1)bso_59] ≥ 0)



    We simplified constraint (90) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (91)    ([2] + i7628[24] ≥ 0∧i7630[24] + [-1] ≥ 0∧i2[24] + [-2] + [-1]i7628[24] ≥ 0∧i7628[24] ≥ 0∧i7996[24] + [-1] ≥ 0∧[1] + i7628[24] ≥ 0∧i2[24] + [-3] + [-1]i7628[24] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_58 + (-1)bni_58] + [(-1)bni_58]i7628[24] + [(2)bni_58]i7630[24] + [bni_58]i2[24] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[2 + (-1)bso_59] ≥ 0)



    We simplified constraint (91) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (92)    ([2] + i7628[24] ≥ 0∧i7630[24] ≥ 0∧i2[24] + [-2] + [-1]i7628[24] ≥ 0∧i7628[24] ≥ 0∧i7996[24] + [-1] ≥ 0∧[1] + i7628[24] ≥ 0∧i2[24] + [-3] + [-1]i7628[24] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_58 + bni_58] + [(-1)bni_58]i7628[24] + [(2)bni_58]i7630[24] + [bni_58]i2[24] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[2 + (-1)bso_59] ≥ 0)



    We simplified constraint (92) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (93)    ([2] + i7628[24] ≥ 0∧i7630[24] ≥ 0∧i2[24] ≥ 0∧i7628[24] ≥ 0∧i7996[24] + [-1] ≥ 0∧[1] + i7628[24] ≥ 0∧[-1] + i2[24] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_58 + (3)bni_58] + [(2)bni_58]i7630[24] + [bni_58]i2[24] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[2 + (-1)bso_59] ≥ 0)



    We simplified constraint (93) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (94)    ([2] + i7628[24] ≥ 0∧i7630[24] ≥ 0∧[1] + i2[24] ≥ 0∧i7628[24] ≥ 0∧i7996[24] + [-1] ≥ 0∧[1] + i7628[24] ≥ 0∧i2[24] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_58 + (4)bni_58] + [(2)bni_58]i7630[24] + [bni_58]i2[24] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[2 + (-1)bso_59] ≥ 0)



    We simplified constraint (94) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (95)    ([2] + i7628[24] ≥ 0∧i7630[24] ≥ 0∧[1] + i2[24] ≥ 0∧i7628[24] ≥ 0∧i7996[24] ≥ 0∧[1] + i7628[24] ≥ 0∧i2[24] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_58 + (4)bni_58] + [(2)bni_58]i7630[24] + [bni_58]i2[24] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[2 + (-1)bso_59] ≥ 0)







For Pair LOAD13603(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23]) → LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23]))) the following chains were created:
  • We consider the chain LOAD13603(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23]) → LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23]))) which results in the following constraint:

    (96)    (LOAD13603(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23])≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23])≥LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))∧(UIncreasing(LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))), ≥))



    We simplified constraint (96) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (97)    ((UIncreasing(LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))), ≥)∧[(-1)bso_61] ≥ 0)



    We simplified constraint (97) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (98)    ((UIncreasing(LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))), ≥)∧[(-1)bso_61] ≥ 0)



    We simplified constraint (98) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (99)    ((UIncreasing(LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))), ≥)∧[(-1)bso_61] ≥ 0)



    We simplified constraint (99) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (100)    ((UIncreasing(LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_61] ≥ 0)







For Pair COND_LOAD13603ARR6(TRUE, java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21], i58[21], i7630[21], java.lang.Object(java.lang.String(i7996[21], i7860[21], i7862[21], a19737[21]))) → INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), +(i7628[21], 1), i58[21], i7630[21]) the following chains were created:
  • We consider the chain COND_LOAD13603ARR6(TRUE, java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21], i58[21], i7630[21], java.lang.Object(java.lang.String(i7996[21], i7860[21], i7862[21], a19737[21]))) → INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), +(i7628[21], 1), i58[21], i7630[21]) which results in the following constraint:

    (101)    (COND_LOAD13603ARR6(TRUE, java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21], i58[21], i7630[21], java.lang.Object(java.lang.String(i7996[21], i7860[21], i7862[21], a19737[21])))≥NonInfC∧COND_LOAD13603ARR6(TRUE, java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21], i58[21], i7630[21], java.lang.Object(java.lang.String(i7996[21], i7860[21], i7862[21], a19737[21])))≥INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), +(i7628[21], 1), i58[21], i7630[21])∧(UIncreasing(INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), +(i7628[21], 1), i58[21], i7630[21])), ≥))



    We simplified constraint (101) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (102)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), +(i7628[21], 1), i58[21], i7630[21])), ≥)∧[(-1)bso_63] ≥ 0)



    We simplified constraint (102) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (103)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), +(i7628[21], 1), i58[21], i7630[21])), ≥)∧[(-1)bso_63] ≥ 0)



    We simplified constraint (103) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (104)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), +(i7628[21], 1), i58[21], i7630[21])), ≥)∧[(-1)bso_63] ≥ 0)



    We simplified constraint (104) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (105)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), +(i7628[21], 1), i58[21], i7630[21])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_63] ≥ 0)







For Pair LOAD13603ARR6(java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20]))) → COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20]))) the following chains were created:
  • We consider the chain LOAD13603ARR6(java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20]))) → COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20]))), COND_LOAD13603ARR6(TRUE, java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21], i58[21], i7630[21], java.lang.Object(java.lang.String(i7996[21], i7860[21], i7862[21], a19737[21]))) → INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), +(i7628[21], 1), i58[21], i7630[21]) which results in the following constraint:

    (106)    (i7630[20]=i7630[21]i7628[20]=i7628[21]i2[20]=i2[21]a19203data[20]=a19203data[21]i58[20]=i58[21]&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0))=TRUEi7996[20]=i7996[21]i7860[20]=i7860[21]i7862[20]=i7862[21]a19737[20]=a19737[21]LOAD13603ARR6(java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))≥NonInfC∧LOAD13603ARR6(java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))≥COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))∧(UIncreasing(COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))), ≥))



    We simplified constraint (106) using rules (IV), (IDP_BOOLEAN) which results in the following new constraint:

    (107)    (>(+(i7628[20], 1), 0)=TRUE>(i7630[20], 0)=TRUE<(i7628[20], i2[20])=TRUE>(i7996[20], 0)=TRUE>(i7628[20], 0)=TRUELOAD13603ARR6(java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))≥NonInfC∧LOAD13603ARR6(java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))≥COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))∧(UIncreasing(COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))), ≥))



    We simplified constraint (107) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (108)    (i7628[20] ≥ 0∧i7630[20] + [-1] ≥ 0∧i2[20] + [-1] + [-1]i7628[20] ≥ 0∧i7996[20] + [-1] ≥ 0∧i7628[20] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))), ≥)∧[(-1)bni_64 + (-1)Bound*bni_64] + [(-1)bni_64]i7628[20] + [(2)bni_64]i7630[20] + [bni_64]i2[20] ≥ 0∧[2 + (-1)bso_65] ≥ 0)



    We simplified constraint (108) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (109)    (i7628[20] ≥ 0∧i7630[20] + [-1] ≥ 0∧i2[20] + [-1] + [-1]i7628[20] ≥ 0∧i7996[20] + [-1] ≥ 0∧i7628[20] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))), ≥)∧[(-1)bni_64 + (-1)Bound*bni_64] + [(-1)bni_64]i7628[20] + [(2)bni_64]i7630[20] + [bni_64]i2[20] ≥ 0∧[2 + (-1)bso_65] ≥ 0)



    We simplified constraint (109) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (110)    (i7628[20] ≥ 0∧i7630[20] + [-1] ≥ 0∧i2[20] + [-1] + [-1]i7628[20] ≥ 0∧i7996[20] + [-1] ≥ 0∧i7628[20] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))), ≥)∧[(-1)bni_64 + (-1)Bound*bni_64] + [(-1)bni_64]i7628[20] + [(2)bni_64]i7630[20] + [bni_64]i2[20] ≥ 0∧[2 + (-1)bso_65] ≥ 0)



    We simplified constraint (110) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (111)    (i7628[20] ≥ 0∧i7630[20] + [-1] ≥ 0∧i2[20] + [-1] + [-1]i7628[20] ≥ 0∧i7996[20] + [-1] ≥ 0∧i7628[20] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bni_64 + (-1)Bound*bni_64] + [(-1)bni_64]i7628[20] + [(2)bni_64]i7630[20] + [bni_64]i2[20] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[2 + (-1)bso_65] ≥ 0)



    We simplified constraint (111) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (112)    ([1] + i7628[20] ≥ 0∧i7630[20] + [-1] ≥ 0∧i2[20] + [-2] + [-1]i7628[20] ≥ 0∧i7996[20] + [-1] ≥ 0∧i7628[20] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-2)bni_64 + (-1)Bound*bni_64] + [(-1)bni_64]i7628[20] + [(2)bni_64]i7630[20] + [bni_64]i2[20] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[2 + (-1)bso_65] ≥ 0)



    We simplified constraint (112) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (113)    ([1] + i7628[20] ≥ 0∧i7630[20] ≥ 0∧i2[20] + [-2] + [-1]i7628[20] ≥ 0∧i7996[20] + [-1] ≥ 0∧i7628[20] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_64] + [(-1)bni_64]i7628[20] + [(2)bni_64]i7630[20] + [bni_64]i2[20] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[2 + (-1)bso_65] ≥ 0)



    We simplified constraint (113) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (114)    ([1] + i7628[20] ≥ 0∧i7630[20] ≥ 0∧i2[20] ≥ 0∧i7996[20] + [-1] ≥ 0∧i7628[20] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_64 + (2)bni_64] + [(2)bni_64]i7630[20] + [bni_64]i2[20] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[2 + (-1)bso_65] ≥ 0)



    We simplified constraint (114) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (115)    ([1] + i7628[20] ≥ 0∧i7630[20] ≥ 0∧i2[20] ≥ 0∧i7996[20] ≥ 0∧i7628[20] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_64 + (2)bni_64] + [(2)bni_64]i7630[20] + [bni_64]i2[20] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[2 + (-1)bso_65] ≥ 0)







For Pair LOAD13603(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19]) → LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19]))) the following chains were created:
  • We consider the chain LOAD13603(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19]) → LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19]))) which results in the following constraint:

    (116)    (LOAD13603(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19])≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19])≥LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])))∧(UIncreasing(LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])))), ≥))



    We simplified constraint (116) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (117)    ((UIncreasing(LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])))), ≥)∧[1 + (-1)bso_67] ≥ 0)



    We simplified constraint (117) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (118)    ((UIncreasing(LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])))), ≥)∧[1 + (-1)bso_67] ≥ 0)



    We simplified constraint (118) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (119)    ((UIncreasing(LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])))), ≥)∧[1 + (-1)bso_67] ≥ 0)



    We simplified constraint (119) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (120)    ((UIncreasing(LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_67] ≥ 0)







For Pair INC15077(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7]) → LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], +(i7630[7], -1)) the following chains were created:
  • We consider the chain INC15077(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7]) → LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], +(i7630[7], -1)) which results in the following constraint:

    (121)    (INC15077(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7])≥NonInfC∧INC15077(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7])≥LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], +(i7630[7], -1))∧(UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], +(i7630[7], -1))), ≥))



    We simplified constraint (121) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (122)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], +(i7630[7], -1))), ≥)∧[(-1)bso_69] ≥ 0)



    We simplified constraint (122) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (123)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], +(i7630[7], -1))), ≥)∧[(-1)bso_69] ≥ 0)



    We simplified constraint (123) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (124)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], +(i7630[7], -1))), ≥)∧[(-1)bso_69] ≥ 0)



    We simplified constraint (124) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (125)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], +(i7630[7], -1))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_69] ≥ 0)







For Pair COND_LOAD13603ARR5(TRUE, java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17], i58[17], i7630[17]) → INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), +(i7628[17], 1), i58[17], i7630[17]) the following chains were created:
  • We consider the chain COND_LOAD13603ARR5(TRUE, java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17], i58[17], i7630[17]) → INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), +(i7628[17], 1), i58[17], i7630[17]) which results in the following constraint:

    (126)    (COND_LOAD13603ARR5(TRUE, java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17], i58[17], i7630[17])≥NonInfC∧COND_LOAD13603ARR5(TRUE, java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17], i58[17], i7630[17])≥INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), +(i7628[17], 1), i58[17], i7630[17])∧(UIncreasing(INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), +(i7628[17], 1), i58[17], i7630[17])), ≥))



    We simplified constraint (126) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (127)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), +(i7628[17], 1), i58[17], i7630[17])), ≥)∧[(-1)bso_71] ≥ 0)



    We simplified constraint (127) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (128)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), +(i7628[17], 1), i58[17], i7630[17])), ≥)∧[(-1)bso_71] ≥ 0)



    We simplified constraint (128) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (129)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), +(i7628[17], 1), i58[17], i7630[17])), ≥)∧[(-1)bso_71] ≥ 0)



    We simplified constraint (129) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (130)    ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), +(i7628[17], 1), i58[17], i7630[17])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_71] ≥ 0)







For Pair LOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16]) → COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16]) the following chains were created:
  • We consider the chain LOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16]) → COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16]), COND_LOAD13603ARR5(TRUE, java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17], i58[17], i7630[17]) → INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), +(i7628[17], 1), i58[17], i7630[17]) which results in the following constraint:

    (131)    (i2[16]=i2[17]a19203data[16]=a19203data[17]i7628[16]=i7628[17]i7630[16]=i7630[17]i58[16]=i58[17]&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0))=TRUELOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])≥NonInfC∧LOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])≥COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])∧(UIncreasing(COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])), ≥))



    We simplified constraint (131) using rules (IV), (IDP_BOOLEAN) which results in the following new constraint:

    (132)    (>(+(i7628[16], 1), 0)=TRUE>(i7630[16], 0)=TRUE>(i7628[16], 0)=TRUE<(i7628[16], i2[16])=TRUELOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])≥NonInfC∧LOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])≥COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])∧(UIncreasing(COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])), ≥))



    We simplified constraint (132) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (133)    (i7628[16] ≥ 0∧i7630[16] + [-1] ≥ 0∧i7628[16] + [-1] ≥ 0∧i2[16] + [-1] + [-1]i7628[16] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])), ≥)∧[(-3)bni_72 + (-1)Bound*bni_72] + [(2)bni_72]i7630[16] + [(-1)bni_72]i7628[16] + [bni_72]i2[16] ≥ 0∧[(-1)bso_73] ≥ 0)



    We simplified constraint (133) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (134)    (i7628[16] ≥ 0∧i7630[16] + [-1] ≥ 0∧i7628[16] + [-1] ≥ 0∧i2[16] + [-1] + [-1]i7628[16] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])), ≥)∧[(-3)bni_72 + (-1)Bound*bni_72] + [(2)bni_72]i7630[16] + [(-1)bni_72]i7628[16] + [bni_72]i2[16] ≥ 0∧[(-1)bso_73] ≥ 0)



    We simplified constraint (134) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (135)    (i7628[16] ≥ 0∧i7630[16] + [-1] ≥ 0∧i7628[16] + [-1] ≥ 0∧i2[16] + [-1] + [-1]i7628[16] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])), ≥)∧[(-3)bni_72 + (-1)Bound*bni_72] + [(2)bni_72]i7630[16] + [(-1)bni_72]i7628[16] + [bni_72]i2[16] ≥ 0∧[(-1)bso_73] ≥ 0)



    We simplified constraint (135) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (136)    (i7628[16] ≥ 0∧i7630[16] + [-1] ≥ 0∧i7628[16] + [-1] ≥ 0∧i2[16] + [-1] + [-1]i7628[16] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])), ≥)∧0 = 0∧[(-3)bni_72 + (-1)Bound*bni_72] + [(2)bni_72]i7630[16] + [(-1)bni_72]i7628[16] + [bni_72]i2[16] ≥ 0∧0 = 0∧[(-1)bso_73] ≥ 0)



    We simplified constraint (136) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (137)    ([1] + i7628[16] ≥ 0∧i7630[16] + [-1] ≥ 0∧i7628[16] ≥ 0∧i2[16] + [-2] + [-1]i7628[16] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])), ≥)∧0 = 0∧[(-4)bni_72 + (-1)Bound*bni_72] + [(2)bni_72]i7630[16] + [(-1)bni_72]i7628[16] + [bni_72]i2[16] ≥ 0∧0 = 0∧[(-1)bso_73] ≥ 0)



    We simplified constraint (137) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (138)    ([1] + i7628[16] ≥ 0∧i7630[16] ≥ 0∧i7628[16] ≥ 0∧i2[16] + [-2] + [-1]i7628[16] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])), ≥)∧0 = 0∧[(-2)bni_72 + (-1)Bound*bni_72] + [(2)bni_72]i7630[16] + [(-1)bni_72]i7628[16] + [bni_72]i2[16] ≥ 0∧0 = 0∧[(-1)bso_73] ≥ 0)



    We simplified constraint (138) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (139)    ([1] + i7628[16] ≥ 0∧i7630[16] ≥ 0∧i7628[16] ≥ 0∧i2[16] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])), ≥)∧0 = 0∧[(-1)Bound*bni_72] + [(2)bni_72]i7630[16] + [bni_72]i2[16] ≥ 0∧0 = 0∧[(-1)bso_73] ≥ 0)







For Pair LOAD13603(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15]) → LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15]) the following chains were created:
  • We consider the chain LOAD13603(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15]) → LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15]), LOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16]) → COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16]) which results in the following constraint:

    (140)    (i58[15]=i58[16]i7628[15]=i7628[16]i2[15]=i2[16]a19203data[15]=a19203data[16]i7630[15]=i7630[16]LOAD13603(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])≥LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])∧(UIncreasing(LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])), ≥))



    We simplified constraint (140) using rule (IV) which results in the following new constraint:

    (141)    (LOAD13603(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])≥LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])∧(UIncreasing(LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])), ≥))



    We simplified constraint (141) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (142)    ((UIncreasing(LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])), ≥)∧[3 + (-1)bso_75] ≥ 0)



    We simplified constraint (142) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (143)    ((UIncreasing(LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])), ≥)∧[3 + (-1)bso_75] ≥ 0)



    We simplified constraint (143) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (144)    ((UIncreasing(LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])), ≥)∧[3 + (-1)bso_75] ≥ 0)



    We simplified constraint (144) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (145)    ((UIncreasing(LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[3 + (-1)bso_75] ≥ 0)







For Pair COND_LOAD13603ARR4(TRUE, java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14], i58[14], i7630[14]) → LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), +(+(i7628[14], 1), 1), i58[14], +(i7630[14], -1)) the following chains were created:
  • We consider the chain COND_LOAD13603ARR4(TRUE, java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14], i58[14], i7630[14]) → LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), +(+(i7628[14], 1), 1), i58[14], +(i7630[14], -1)) which results in the following constraint:

    (146)    (COND_LOAD13603ARR4(TRUE, java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14], i58[14], i7630[14])≥NonInfC∧COND_LOAD13603ARR4(TRUE, java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14], i58[14], i7630[14])≥LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), +(+(i7628[14], 1), 1), i58[14], +(i7630[14], -1))∧(UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), +(+(i7628[14], 1), 1), i58[14], +(i7630[14], -1))), ≥))



    We simplified constraint (146) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (147)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), +(+(i7628[14], 1), 1), i58[14], +(i7630[14], -1))), ≥)∧[1 + (-1)bso_77] ≥ 0)



    We simplified constraint (147) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (148)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), +(+(i7628[14], 1), 1), i58[14], +(i7630[14], -1))), ≥)∧[1 + (-1)bso_77] ≥ 0)



    We simplified constraint (148) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (149)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), +(+(i7628[14], 1), 1), i58[14], +(i7630[14], -1))), ≥)∧[1 + (-1)bso_77] ≥ 0)



    We simplified constraint (149) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (150)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), +(+(i7628[14], 1), 1), i58[14], +(i7630[14], -1))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_77] ≥ 0)







For Pair LOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13]) → COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13]) the following chains were created:
  • We consider the chain LOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13]) → COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13]), COND_LOAD13603ARR4(TRUE, java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14], i58[14], i7630[14]) → LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), +(+(i7628[14], 1), 1), i58[14], +(i7630[14], -1)) which results in the following constraint:

    (151)    (i7628[13]=i7628[14]i2[13]=i2[14]a19203data[13]=a19203data[14]&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0))=TRUEi7630[13]=i7630[14]i58[13]=i58[14]LOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])≥NonInfC∧LOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])≥COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])∧(UIncreasing(COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])), ≥))



    We simplified constraint (151) using rules (IV), (IDP_BOOLEAN) which results in the following new constraint:

    (152)    (>(+(+(i7628[13], 1), 1), 0)=TRUE>(i7630[13], 0)=TRUE<(i7628[13], i2[13])=TRUE>(i7628[13], 0)=TRUE>(+(i7628[13], 1), 0)=TRUE<(+(i7628[13], 1), i2[13])=TRUELOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])≥NonInfC∧LOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])≥COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])∧(UIncreasing(COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])), ≥))



    We simplified constraint (152) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (153)    (i7628[13] + [1] ≥ 0∧i7630[13] + [-1] ≥ 0∧i2[13] + [-1] + [-1]i7628[13] ≥ 0∧i7628[13] + [-1] ≥ 0∧i7628[13] ≥ 0∧i2[13] + [-2] + [-1]i7628[13] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])), ≥)∧[(-3)bni_78 + (-1)Bound*bni_78] + [(2)bni_78]i7630[13] + [(-1)bni_78]i7628[13] + [bni_78]i2[13] ≥ 0∧[(-1)bso_79] ≥ 0)



    We simplified constraint (153) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (154)    (i7628[13] + [1] ≥ 0∧i7630[13] + [-1] ≥ 0∧i2[13] + [-1] + [-1]i7628[13] ≥ 0∧i7628[13] + [-1] ≥ 0∧i7628[13] ≥ 0∧i2[13] + [-2] + [-1]i7628[13] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])), ≥)∧[(-3)bni_78 + (-1)Bound*bni_78] + [(2)bni_78]i7630[13] + [(-1)bni_78]i7628[13] + [bni_78]i2[13] ≥ 0∧[(-1)bso_79] ≥ 0)



    We simplified constraint (154) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (155)    (i7628[13] + [1] ≥ 0∧i7630[13] + [-1] ≥ 0∧i2[13] + [-1] + [-1]i7628[13] ≥ 0∧i7628[13] + [-1] ≥ 0∧i7628[13] ≥ 0∧i2[13] + [-2] + [-1]i7628[13] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])), ≥)∧[(-3)bni_78 + (-1)Bound*bni_78] + [(2)bni_78]i7630[13] + [(-1)bni_78]i7628[13] + [bni_78]i2[13] ≥ 0∧[(-1)bso_79] ≥ 0)



    We simplified constraint (155) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (156)    (i7628[13] + [1] ≥ 0∧i7630[13] + [-1] ≥ 0∧i2[13] + [-1] + [-1]i7628[13] ≥ 0∧i7628[13] + [-1] ≥ 0∧i7628[13] ≥ 0∧i2[13] + [-2] + [-1]i7628[13] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])), ≥)∧0 = 0∧[(-3)bni_78 + (-1)Bound*bni_78] + [(2)bni_78]i7630[13] + [(-1)bni_78]i7628[13] + [bni_78]i2[13] ≥ 0∧0 = 0∧[(-1)bso_79] ≥ 0)



    We simplified constraint (156) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (157)    ([2] + i7628[13] ≥ 0∧i7630[13] + [-1] ≥ 0∧i2[13] + [-2] + [-1]i7628[13] ≥ 0∧i7628[13] ≥ 0∧[1] + i7628[13] ≥ 0∧i2[13] + [-3] + [-1]i7628[13] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])), ≥)∧0 = 0∧[(-4)bni_78 + (-1)Bound*bni_78] + [(2)bni_78]i7630[13] + [(-1)bni_78]i7628[13] + [bni_78]i2[13] ≥ 0∧0 = 0∧[(-1)bso_79] ≥ 0)



    We simplified constraint (157) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (158)    ([2] + i7628[13] ≥ 0∧i7630[13] ≥ 0∧i2[13] + [-2] + [-1]i7628[13] ≥ 0∧i7628[13] ≥ 0∧[1] + i7628[13] ≥ 0∧i2[13] + [-3] + [-1]i7628[13] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])), ≥)∧0 = 0∧[(-2)bni_78 + (-1)Bound*bni_78] + [(2)bni_78]i7630[13] + [(-1)bni_78]i7628[13] + [bni_78]i2[13] ≥ 0∧0 = 0∧[(-1)bso_79] ≥ 0)



    We simplified constraint (158) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (159)    ([2] + i7628[13] ≥ 0∧i7630[13] ≥ 0∧i2[13] ≥ 0∧i7628[13] ≥ 0∧[1] + i7628[13] ≥ 0∧[-1] + i2[13] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])), ≥)∧0 = 0∧[(-1)Bound*bni_78] + [(2)bni_78]i7630[13] + [bni_78]i2[13] ≥ 0∧0 = 0∧[(-1)bso_79] ≥ 0)



    We simplified constraint (159) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (160)    ([2] + i7628[13] ≥ 0∧i7630[13] ≥ 0∧[1] + i2[13] ≥ 0∧i7628[13] ≥ 0∧[1] + i7628[13] ≥ 0∧i2[13] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])), ≥)∧0 = 0∧[bni_78 + (-1)Bound*bni_78] + [(2)bni_78]i7630[13] + [bni_78]i2[13] ≥ 0∧0 = 0∧[(-1)bso_79] ≥ 0)







For Pair LOAD13603(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12]) → LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12]) the following chains were created:
  • We consider the chain LOAD13603(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12]) → LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12]), LOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13]) → COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13]) which results in the following constraint:

    (161)    (i7630[12]=i7630[13]i58[12]=i58[13]i7628[12]=i7628[13]i2[12]=i2[13]a19203data[12]=a19203data[13]LOAD13603(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])≥LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])∧(UIncreasing(LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])), ≥))



    We simplified constraint (161) using rule (IV) which results in the following new constraint:

    (162)    (LOAD13603(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])≥LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])∧(UIncreasing(LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])), ≥))



    We simplified constraint (162) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (163)    ((UIncreasing(LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])), ≥)∧[3 + (-1)bso_81] ≥ 0)



    We simplified constraint (163) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (164)    ((UIncreasing(LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])), ≥)∧[3 + (-1)bso_81] ≥ 0)



    We simplified constraint (164) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (165)    ((UIncreasing(LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])), ≥)∧[3 + (-1)bso_81] ≥ 0)



    We simplified constraint (165) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (166)    ((UIncreasing(LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[3 + (-1)bso_81] ≥ 0)







For Pair COND_LOAD13603ARR3(TRUE, java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10], i58[10], i7630[10]) → LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), +(i7628[10], 1), i58[10], +(i7630[10], -1)) the following chains were created:
  • We consider the chain COND_LOAD13603ARR3(TRUE, java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10], i58[10], i7630[10]) → LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), +(i7628[10], 1), i58[10], +(i7630[10], -1)) which results in the following constraint:

    (167)    (COND_LOAD13603ARR3(TRUE, java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10], i58[10], i7630[10])≥NonInfC∧COND_LOAD13603ARR3(TRUE, java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10], i58[10], i7630[10])≥LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), +(i7628[10], 1), i58[10], +(i7630[10], -1))∧(UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), +(i7628[10], 1), i58[10], +(i7630[10], -1))), ≥))



    We simplified constraint (167) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (168)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), +(i7628[10], 1), i58[10], +(i7630[10], -1))), ≥)∧[2 + (-1)bso_83] ≥ 0)



    We simplified constraint (168) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (169)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), +(i7628[10], 1), i58[10], +(i7630[10], -1))), ≥)∧[2 + (-1)bso_83] ≥ 0)



    We simplified constraint (169) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (170)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), +(i7628[10], 1), i58[10], +(i7630[10], -1))), ≥)∧[2 + (-1)bso_83] ≥ 0)



    We simplified constraint (170) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (171)    ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), +(i7628[10], 1), i58[10], +(i7630[10], -1))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[2 + (-1)bso_83] ≥ 0)







For Pair LOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9]) → COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9]) the following chains were created:
  • We consider the chain LOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9]) → COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9]), COND_LOAD13603ARR3(TRUE, java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10], i58[10], i7630[10]) → LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), +(i7628[10], 1), i58[10], +(i7630[10], -1)) which results in the following constraint:

    (172)    (i58[9]=i58[10]&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0))=TRUEi2[9]=i2[10]a19203data[9]=a19203data[10]i7628[9]=i7628[10]i7630[9]=i7630[10]LOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])≥NonInfC∧LOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])≥COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])∧(UIncreasing(COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])), ≥))



    We simplified constraint (172) using rules (IV), (IDP_BOOLEAN) which results in the following new constraint:

    (173)    (>(+(i7628[9], 1), 0)=TRUE>(i7630[9], 0)=TRUE>(i7628[9], 0)=TRUE<(i7628[9], i2[9])=TRUELOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])≥NonInfC∧LOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])≥COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])∧(UIncreasing(COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])), ≥))



    We simplified constraint (173) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (174)    (i7628[9] ≥ 0∧i7630[9] + [-1] ≥ 0∧i7628[9] + [-1] ≥ 0∧i2[9] + [-1] + [-1]i7628[9] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])), ≥)∧[(-1)bni_84 + (-1)Bound*bni_84] + [bni_84]i2[9] + [(2)bni_84]i7630[9] + [(-1)bni_84]i7628[9] ≥ 0∧[(-1)bso_85] ≥ 0)



    We simplified constraint (174) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (175)    (i7628[9] ≥ 0∧i7630[9] + [-1] ≥ 0∧i7628[9] + [-1] ≥ 0∧i2[9] + [-1] + [-1]i7628[9] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])), ≥)∧[(-1)bni_84 + (-1)Bound*bni_84] + [bni_84]i2[9] + [(2)bni_84]i7630[9] + [(-1)bni_84]i7628[9] ≥ 0∧[(-1)bso_85] ≥ 0)



    We simplified constraint (175) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (176)    (i7628[9] ≥ 0∧i7630[9] + [-1] ≥ 0∧i7628[9] + [-1] ≥ 0∧i2[9] + [-1] + [-1]i7628[9] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])), ≥)∧[(-1)bni_84 + (-1)Bound*bni_84] + [bni_84]i2[9] + [(2)bni_84]i7630[9] + [(-1)bni_84]i7628[9] ≥ 0∧[(-1)bso_85] ≥ 0)



    We simplified constraint (176) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (177)    (i7628[9] ≥ 0∧i7630[9] + [-1] ≥ 0∧i7628[9] + [-1] ≥ 0∧i2[9] + [-1] + [-1]i7628[9] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])), ≥)∧0 = 0∧[(-1)bni_84 + (-1)Bound*bni_84] + [bni_84]i2[9] + [(2)bni_84]i7630[9] + [(-1)bni_84]i7628[9] ≥ 0∧0 = 0∧[(-1)bso_85] ≥ 0)



    We simplified constraint (177) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (178)    ([1] + i7628[9] ≥ 0∧i7630[9] + [-1] ≥ 0∧i7628[9] ≥ 0∧i2[9] + [-2] + [-1]i7628[9] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])), ≥)∧0 = 0∧[(-2)bni_84 + (-1)Bound*bni_84] + [bni_84]i2[9] + [(2)bni_84]i7630[9] + [(-1)bni_84]i7628[9] ≥ 0∧0 = 0∧[(-1)bso_85] ≥ 0)



    We simplified constraint (178) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (179)    ([1] + i7628[9] ≥ 0∧i7630[9] ≥ 0∧i7628[9] ≥ 0∧i2[9] + [-2] + [-1]i7628[9] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])), ≥)∧0 = 0∧[(-1)Bound*bni_84] + [bni_84]i2[9] + [(2)bni_84]i7630[9] + [(-1)bni_84]i7628[9] ≥ 0∧0 = 0∧[(-1)bso_85] ≥ 0)



    We simplified constraint (179) using rule (IDP_SMT_SPLIT) which results in the following new constraint:

    (180)    ([1] + i7628[9] ≥ 0∧i7630[9] ≥ 0∧i7628[9] ≥ 0∧i2[9] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])), ≥)∧0 = 0∧[(2)bni_84 + (-1)Bound*bni_84] + [bni_84]i2[9] + [(2)bni_84]i7630[9] ≥ 0∧0 = 0∧[(-1)bso_85] ≥ 0)







For Pair LOAD13603(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8]) → LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8]) the following chains were created:
  • We consider the chain LOAD13603(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8]) → LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8]), LOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9]) → COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9]) which results in the following constraint:

    (181)    (i2[8]=i2[9]a19203data[8]=a19203data[9]i58[8]=i58[9]i7630[8]=i7630[9]i7628[8]=i7628[9]LOAD13603(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])≥LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])∧(UIncreasing(LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])), ≥))



    We simplified constraint (181) using rule (IV) which results in the following new constraint:

    (182)    (LOAD13603(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])≥NonInfC∧LOAD13603(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])≥LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])∧(UIncreasing(LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])), ≥))



    We simplified constraint (182) using rule (POLY_CONSTRAINTS) which results in the following new constraint:

    (183)    ((UIncreasing(LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])), ≥)∧[1 + (-1)bso_87] ≥ 0)



    We simplified constraint (183) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:

    (184)    ((UIncreasing(LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])), ≥)∧[1 + (-1)bso_87] ≥ 0)



    We simplified constraint (184) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:

    (185)    ((UIncreasing(LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])), ≥)∧[1 + (-1)bso_87] ≥ 0)



    We simplified constraint (185) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:

    (186)    ((UIncreasing(LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_87] ≥ 0)







To summarize, we get the following constraints P for the following pairs.
  • JMP18886'(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22]) → INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])
    • ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_33] ≥ 0)

  • COND_LOAD13603ARR10(TRUE, java.lang.Object(ARRAY(i2[34], a19203data[34])), i7628[34], i58[34], i7630[34], java.lang.Object(java.lang.String(i7996[34], i7860[34], i7862[34], a19737[34]))) → JMP18886'(java.lang.Object(ARRAY(i2[34], a19203data[34])), +(+(i7628[34], 1), 1), i58[34], i7630[34])
    • ((UIncreasing(JMP18886'(java.lang.Object(ARRAY(i2[34], a19203data[34])), +(+(i7628[34], 1), 1), i58[34], i7630[34])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_35] ≥ 0)

  • LOAD13603ARR10(java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33]))) → COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))
    • ([2] + i7628[33] ≥ 0∧i7630[33] ≥ 0∧[1] + i2[33] ≥ 0∧i7628[33] ≥ 0∧i7996[33] ≥ 0∧[1] + i7628[33] ≥ 0∧i2[33] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_36 + (4)bni_36] + [(2)bni_36]i7630[33] + [bni_36]i2[33] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[3 + (-1)bso_37] ≥ 0)

  • LOAD13603(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32]) → LOAD13603ARR10(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32], java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32])))
    • ((UIncreasing(LOAD13603ARR10(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32], java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_39] ≥ 0)

  • JMP15126'(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18]) → INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])
    • ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[2 + (-1)bso_41] ≥ 0)

  • COND_LOAD13603ARR9(TRUE, java.lang.Object(ARRAY(i2[31], a19203data[31])), i7628[31], i58[31], i7630[31], java.lang.Object(java.lang.String(i7996[31], i7860[31], i7862[31], a19737[31]))) → JMP15126'(java.lang.Object(ARRAY(i2[31], a19203data[31])), +(i7628[31], 1), i58[31], i7630[31])
    • ((UIncreasing(JMP15126'(java.lang.Object(ARRAY(i2[31], a19203data[31])), +(i7628[31], 1), i58[31], i7630[31])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_43] ≥ 0)

  • LOAD13603ARR9(java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30]))) → COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))
    • ([1] + i7628[30] ≥ 0∧i7630[30] ≥ 0∧i2[30] ≥ 0∧i7996[30] ≥ 0∧i7628[30] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_44 + (3)bni_44] + [(2)bni_44]i7630[30] + [bni_44]i2[30] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_45] ≥ 0)

  • LOAD13603(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29]) → LOAD13603ARR9(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29], java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29])))
    • ((UIncreasing(LOAD13603ARR9(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29], java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_47] ≥ 0)

  • COND_LOAD13603ARR8(TRUE, java.lang.Object(ARRAY(i2[28], a19203data[28])), i7628[28], i58[28], i7630[28]) → INC18978(java.lang.Object(ARRAY(i2[28], a19203data[28])), +(+(i7628[28], 1), 1), i58[28], i7630[28])
    • ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[28], a19203data[28])), +(+(i7628[28], 1), 1), i58[28], i7630[28])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_49] ≥ 0)

  • LOAD13603ARR8(java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27]) → COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])
    • ([2] + i7628[27] ≥ 0∧i7630[27] ≥ 0∧[1] + i2[27] ≥ 0∧i7628[27] ≥ 0∧[1] + i7628[27] ≥ 0∧i2[27] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])), ≥)∧0 = 0∧[bni_50 + (-1)Bound*bni_50] + [(2)bni_50]i7630[27] + [bni_50]i2[27] ≥ 0∧0 = 0∧[(-1)bso_51] ≥ 0)

  • LOAD13603(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26]) → LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])
    • ((UIncreasing(LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[3 + (-1)bso_53] ≥ 0)

  • INC18978(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11]) → LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], +(i7630[11], -1))
    • ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], +(i7630[11], -1))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_55] ≥ 0)

  • COND_LOAD13603ARR7(TRUE, java.lang.Object(ARRAY(i2[25], a19203data[25])), i7628[25], i58[25], i7630[25], java.lang.Object(java.lang.String(i7996[25], i7860[25], i7862[25], a19737[25]))) → INC18978(java.lang.Object(ARRAY(i2[25], a19203data[25])), +(+(i7628[25], 1), 1), i58[25], i7630[25])
    • ((UIncreasing(INC18978(java.lang.Object(ARRAY(i2[25], a19203data[25])), +(+(i7628[25], 1), 1), i58[25], i7630[25])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[2 + (-1)bso_57] ≥ 0)

  • LOAD13603ARR7(java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24]))) → COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))
    • ([2] + i7628[24] ≥ 0∧i7630[24] ≥ 0∧[1] + i2[24] ≥ 0∧i7628[24] ≥ 0∧i7996[24] ≥ 0∧[1] + i7628[24] ≥ 0∧i2[24] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_58 + (4)bni_58] + [(2)bni_58]i7630[24] + [bni_58]i2[24] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[2 + (-1)bso_59] ≥ 0)

  • LOAD13603(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23]) → LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))
    • ((UIncreasing(LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_61] ≥ 0)

  • COND_LOAD13603ARR6(TRUE, java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21], i58[21], i7630[21], java.lang.Object(java.lang.String(i7996[21], i7860[21], i7862[21], a19737[21]))) → INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), +(i7628[21], 1), i58[21], i7630[21])
    • ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), +(i7628[21], 1), i58[21], i7630[21])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_63] ≥ 0)

  • LOAD13603ARR6(java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20]))) → COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))
    • ([1] + i7628[20] ≥ 0∧i7630[20] ≥ 0∧i2[20] ≥ 0∧i7996[20] ≥ 0∧i7628[20] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_64 + (2)bni_64] + [(2)bni_64]i7630[20] + [bni_64]i2[20] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[2 + (-1)bso_65] ≥ 0)

  • LOAD13603(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19]) → LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])))
    • ((UIncreasing(LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_67] ≥ 0)

  • INC15077(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7]) → LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], +(i7630[7], -1))
    • ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], +(i7630[7], -1))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_69] ≥ 0)

  • COND_LOAD13603ARR5(TRUE, java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17], i58[17], i7630[17]) → INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), +(i7628[17], 1), i58[17], i7630[17])
    • ((UIncreasing(INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), +(i7628[17], 1), i58[17], i7630[17])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_71] ≥ 0)

  • LOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16]) → COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])
    • ([1] + i7628[16] ≥ 0∧i7630[16] ≥ 0∧i7628[16] ≥ 0∧i2[16] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])), ≥)∧0 = 0∧[(-1)Bound*bni_72] + [(2)bni_72]i7630[16] + [bni_72]i2[16] ≥ 0∧0 = 0∧[(-1)bso_73] ≥ 0)

  • LOAD13603(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15]) → LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])
    • ((UIncreasing(LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[3 + (-1)bso_75] ≥ 0)

  • COND_LOAD13603ARR4(TRUE, java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14], i58[14], i7630[14]) → LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), +(+(i7628[14], 1), 1), i58[14], +(i7630[14], -1))
    • ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), +(+(i7628[14], 1), 1), i58[14], +(i7630[14], -1))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_77] ≥ 0)

  • LOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13]) → COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])
    • ([2] + i7628[13] ≥ 0∧i7630[13] ≥ 0∧[1] + i2[13] ≥ 0∧i7628[13] ≥ 0∧[1] + i7628[13] ≥ 0∧i2[13] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])), ≥)∧0 = 0∧[bni_78 + (-1)Bound*bni_78] + [(2)bni_78]i7630[13] + [bni_78]i2[13] ≥ 0∧0 = 0∧[(-1)bso_79] ≥ 0)

  • LOAD13603(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12]) → LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])
    • ((UIncreasing(LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[3 + (-1)bso_81] ≥ 0)

  • COND_LOAD13603ARR3(TRUE, java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10], i58[10], i7630[10]) → LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), +(i7628[10], 1), i58[10], +(i7630[10], -1))
    • ((UIncreasing(LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), +(i7628[10], 1), i58[10], +(i7630[10], -1))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[2 + (-1)bso_83] ≥ 0)

  • LOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9]) → COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])
    • ([1] + i7628[9] ≥ 0∧i7630[9] ≥ 0∧i7628[9] ≥ 0∧i2[9] ≥ 0 ⇒ (UIncreasing(COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])), ≥)∧0 = 0∧[(2)bni_84 + (-1)Bound*bni_84] + [bni_84]i2[9] + [(2)bni_84]i7630[9] ≥ 0∧0 = 0∧[(-1)bso_85] ≥ 0)

  • LOAD13603(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8]) → LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])
    • ((UIncreasing(LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_87] ≥ 0)




The constraints for P> respective Pbound are constructed from P where we just replace every occurence of "t ≥ s" in P by "t > s" respective "t ≥ c". Here c stands for the fresh constant used for Pbound.
Using the following integer polynomial ordering the resulting constraints can be solved
Polynomial interpretation over integers[POLO]:

POL(TRUE) = 0   
POL(FALSE) = 0   
POL(JMP18886'(x1, x2, x3, x4)) = [-1]x2 + [2]x4 + [-1]x1   
POL(java.lang.Object(x1)) = x1   
POL(ARRAY(x1, x2)) = [2] + [-1]x1   
POL(INC18978(x1, x2, x3, x4)) = [-1]x2 + [2]x4 + [-1]x1   
POL(COND_LOAD13603ARR10(x1, x2, x3, x4, x5, x6)) = [-1] + [-1]x3 + [2]x5 + [-1]x2   
POL(java.lang.String(x1, x2, x3, x4)) = [-1] + [-1]x4 + [-1]x3 + [2]x1   
POL(+(x1, x2)) = x1 + x2   
POL(1) = [1]   
POL(LOAD13603ARR10(x1, x2, x3, x4, x5)) = [2] + [-1]x2 + [2]x4 + [-1]x1   
POL(&&(x1, x2)) = [-1]   
POL(>(x1, x2)) = [-1]   
POL(0) = 0   
POL(<(x1, x2)) = [-1]   
POL(LOAD13603(x1, x2, x3, x4)) = [2] + [-1]x2 + [2]x4 + [-1]x1   
POL(JMP15126'(x1, x2, x3, x4)) = [2] + [-1]x2 + [2]x4 + [-1]x1   
POL(INC15077(x1, x2, x3, x4)) = [-1]x2 + [2]x4 + [-1]x1   
POL(COND_LOAD13603ARR9(x1, x2, x3, x4, x5, x6)) = [2] + [-1]x3 + [2]x5 + [-1]x2   
POL(LOAD13603ARR9(x1, x2, x3, x4, x5)) = [2] + [-1]x2 + [2]x4 + [-1]x1   
POL(COND_LOAD13603ARR8(x1, x2, x3, x4, x5)) = [-1] + [-1]x3 + [2]x5 + [-1]x2   
POL(LOAD13603ARR8(x1, x2, x3, x4)) = [-1] + [-1]x2 + [2]x4 + [-1]x1   
POL(-1) = [-1]   
POL(COND_LOAD13603ARR7(x1, x2, x3, x4, x5, x6)) = [-1]x3 + [2]x5 + [-1]x2   
POL(LOAD13603ARR7(x1, x2, x3, x4, x5)) = [2] + [-1]x2 + [2]x4 + [-1]x1   
POL(COND_LOAD13603ARR6(x1, x2, x3, x4, x5, x6)) = [-1] + [-1]x3 + [2]x5 + [-1]x2   
POL(LOAD13603ARR6(x1, x2, x3, x4, x5)) = [1] + [-1]x2 + [2]x4 + [-1]x1   
POL(COND_LOAD13603ARR5(x1, x2, x3, x4, x5)) = [-1] + [2]x5 + [-1]x3 + [-1]x2   
POL(LOAD13603ARR5(x1, x2, x3, x4)) = [-1] + [2]x4 + [-1]x2 + [-1]x1   
POL(COND_LOAD13603ARR4(x1, x2, x3, x4, x5)) = [-1] + [2]x5 + [-1]x3 + [-1]x2   
POL(LOAD13603ARR4(x1, x2, x3, x4)) = [-1] + [2]x4 + [-1]x2 + [-1]x1   
POL(COND_LOAD13603ARR3(x1, x2, x3, x4, x5)) = [1] + [-1]x2 + [2]x5 + [-1]x3   
POL(LOAD13603ARR3(x1, x2, x3, x4)) = [1] + [-1]x1 + [2]x4 + [-1]x2   

The following pairs are in P>:

COND_LOAD13603ARR10(TRUE, java.lang.Object(ARRAY(i2[34], a19203data[34])), i7628[34], i58[34], i7630[34], java.lang.Object(java.lang.String(i7996[34], i7860[34], i7862[34], a19737[34]))) → JMP18886'(java.lang.Object(ARRAY(i2[34], a19203data[34])), +(+(i7628[34], 1), 1), i58[34], i7630[34])
LOAD13603ARR10(java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33]))) → COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))
JMP15126'(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18]) → INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])
COND_LOAD13603ARR9(TRUE, java.lang.Object(ARRAY(i2[31], a19203data[31])), i7628[31], i58[31], i7630[31], java.lang.Object(java.lang.String(i7996[31], i7860[31], i7862[31], a19737[31]))) → JMP15126'(java.lang.Object(ARRAY(i2[31], a19203data[31])), +(i7628[31], 1), i58[31], i7630[31])
COND_LOAD13603ARR8(TRUE, java.lang.Object(ARRAY(i2[28], a19203data[28])), i7628[28], i58[28], i7630[28]) → INC18978(java.lang.Object(ARRAY(i2[28], a19203data[28])), +(+(i7628[28], 1), 1), i58[28], i7630[28])
LOAD13603(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26]) → LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])
COND_LOAD13603ARR7(TRUE, java.lang.Object(ARRAY(i2[25], a19203data[25])), i7628[25], i58[25], i7630[25], java.lang.Object(java.lang.String(i7996[25], i7860[25], i7862[25], a19737[25]))) → INC18978(java.lang.Object(ARRAY(i2[25], a19203data[25])), +(+(i7628[25], 1), 1), i58[25], i7630[25])
LOAD13603ARR7(java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24]))) → COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))
LOAD13603ARR6(java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20]))) → COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))
LOAD13603(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19]) → LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])))
LOAD13603(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15]) → LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])
COND_LOAD13603ARR4(TRUE, java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14], i58[14], i7630[14]) → LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), +(+(i7628[14], 1), 1), i58[14], +(i7630[14], -1))
LOAD13603(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12]) → LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])
COND_LOAD13603ARR3(TRUE, java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10], i58[10], i7630[10]) → LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), +(i7628[10], 1), i58[10], +(i7630[10], -1))
LOAD13603(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8]) → LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])

The following pairs are in Pbound:

LOAD13603ARR10(java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33]))) → COND_LOAD13603ARR10(&&(&&(&&(&&(&&(&&(>(+(i7628[33], 1), 0), <(+(i7628[33], 1), i2[33])), >(i7996[33], 0)), >(i7628[33], 0)), <(i7628[33], i2[33])), >(i7630[33], 0)), >(+(+(i7628[33], 1), 1), 0)), java.lang.Object(ARRAY(i2[33], a19203data[33])), i7628[33], i58[33], i7630[33], java.lang.Object(java.lang.String(i7996[33], i7860[33], i7862[33], a19737[33])))
LOAD13603ARR9(java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30]))) → COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))
LOAD13603ARR8(java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27]) → COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])
LOAD13603ARR7(java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24]))) → COND_LOAD13603ARR7(&&(&&(&&(&&(&&(&&(>(+(i7628[24], 1), 0), <(+(i7628[24], 1), i2[24])), >(i7996[24], 0)), >(i7628[24], 0)), <(i7628[24], i2[24])), >(i7630[24], 0)), >(+(+(i7628[24], 1), 1), 0)), java.lang.Object(ARRAY(i2[24], a19203data[24])), i7628[24], i58[24], i7630[24], java.lang.Object(java.lang.String(i7996[24], i7860[24], i7862[24], a19737[24])))
LOAD13603ARR6(java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20]))) → COND_LOAD13603ARR6(&&(&&(&&(&&(>(i7996[20], 0), >(i7628[20], 0)), <(i7628[20], i2[20])), >(i7630[20], 0)), >(+(i7628[20], 1), 0)), java.lang.Object(ARRAY(i2[20], a19203data[20])), i7628[20], i58[20], i7630[20], java.lang.Object(java.lang.String(i7996[20], i7860[20], i7862[20], a19737[20])))
LOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16]) → COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])
LOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13]) → COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])
LOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9]) → COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])

The following pairs are in P:

JMP18886'(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22]) → INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])
LOAD13603(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32]) → LOAD13603ARR10(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32], java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32])))
LOAD13603ARR9(java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30]))) → COND_LOAD13603ARR9(&&(&&(&&(&&(>(i7996[30], 0), >(i7628[30], 0)), <(i7628[30], i2[30])), >(i7630[30], 0)), >(+(i7628[30], 1), 0)), java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))
LOAD13603(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29]) → LOAD13603ARR9(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29], java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29])))
LOAD13603ARR8(java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27]) → COND_LOAD13603ARR8(&&(&&(&&(&&(&&(>(+(i7628[27], 1), 0), <(+(i7628[27], 1), i2[27])), >(i7628[27], 0)), <(i7628[27], i2[27])), >(i7630[27], 0)), >(+(+(i7628[27], 1), 1), 0)), java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])
INC18978(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11]) → LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], +(i7630[11], -1))
LOAD13603(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23]) → LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))
COND_LOAD13603ARR6(TRUE, java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21], i58[21], i7630[21], java.lang.Object(java.lang.String(i7996[21], i7860[21], i7862[21], a19737[21]))) → INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), +(i7628[21], 1), i58[21], i7630[21])
INC15077(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7]) → LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], +(i7630[7], -1))
COND_LOAD13603ARR5(TRUE, java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17], i58[17], i7630[17]) → INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), +(i7628[17], 1), i58[17], i7630[17])
LOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16]) → COND_LOAD13603ARR5(&&(&&(&&(>(i7628[16], 0), <(i7628[16], i2[16])), >(i7630[16], 0)), >(+(i7628[16], 1), 0)), java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])
LOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13]) → COND_LOAD13603ARR4(&&(&&(&&(&&(&&(>(+(i7628[13], 1), 0), <(+(i7628[13], 1), i2[13])), >(i7628[13], 0)), <(i7628[13], i2[13])), >(i7630[13], 0)), >(+(+(i7628[13], 1), 1), 0)), java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])
LOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9]) → COND_LOAD13603ARR3(&&(&&(&&(>(i7628[9], 0), <(i7628[9], i2[9])), >(i7630[9], 0)), >(+(i7628[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])

There are no usable rules.

(36) Complex Obligation (AND)

(37) Obligation:

IDP problem:
The following function symbols are pre-defined:
!=~Neq: (Integer, Integer) -> Boolean
*~Mul: (Integer, Integer) -> Integer
>=~Ge: (Integer, Integer) -> Boolean
-1~UnaryMinus: (Integer) -> Integer
|~Bwor: (Integer, Integer) -> Integer
/~Div: (Integer, Integer) -> Integer
=~Eq: (Integer, Integer) -> Boolean
~Bwxor: (Integer, Integer) -> Integer
||~Lor: (Boolean, Boolean) -> Boolean
!~Lnot: (Boolean) -> Boolean
<~Lt: (Integer, Integer) -> Boolean
-~Sub: (Integer, Integer) -> Integer
<=~Le: (Integer, Integer) -> Boolean
>~Gt: (Integer, Integer) -> Boolean
~~Bwnot: (Integer) -> Integer
%~Mod: (Integer, Integer) -> Integer
&~Bwand: (Integer, Integer) -> Integer
+~Add: (Integer, Integer) -> Integer
&&~Land: (Boolean, Boolean) -> Boolean


The following domains are used:

Boolean, Integer


R is empty.

The integer pair graph contains the following rules and edges:
(22): JMP18886'(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22]) → INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])
(32): LOAD13603(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32]) → LOAD13603ARR10(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32], java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32])))
(30): LOAD13603ARR9(java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30]))) → COND_LOAD13603ARR9(i7996[30] > 0 && i7628[30] > 0 && i7628[30] < i2[30] && i7630[30] > 0 && i7628[30] + 1 > 0, java.lang.Object(ARRAY(i2[30], a19203data[30])), i7628[30], i58[30], i7630[30], java.lang.Object(java.lang.String(i7996[30], i7860[30], i7862[30], a19737[30])))
(29): LOAD13603(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29]) → LOAD13603ARR9(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29], java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29])))
(27): LOAD13603ARR8(java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27]) → COND_LOAD13603ARR8(i7628[27] + 1 > 0 && i7628[27] + 1 < i2[27] && i7628[27] > 0 && i7628[27] < i2[27] && i7630[27] > 0 && i7628[27] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[27], a19203data[27])), i7628[27], i58[27], i7630[27])
(11): INC18978(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11]) → LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11] + -1)
(23): LOAD13603(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23]) → LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))
(21): COND_LOAD13603ARR6(TRUE, java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21], i58[21], i7630[21], java.lang.Object(java.lang.String(i7996[21], i7860[21], i7862[21], a19737[21]))) → INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21] + 1, i58[21], i7630[21])
(7): INC15077(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7]) → LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7] + -1)
(17): COND_LOAD13603ARR5(TRUE, java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17], i58[17], i7630[17]) → INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17] + 1, i58[17], i7630[17])
(16): LOAD13603ARR5(java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16]) → COND_LOAD13603ARR5(i7628[16] > 0 && i7628[16] < i2[16] && i7630[16] > 0 && i7628[16] + 1 > 0, java.lang.Object(ARRAY(i2[16], a19203data[16])), i7628[16], i58[16], i7630[16])
(13): LOAD13603ARR4(java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13]) → COND_LOAD13603ARR4(i7628[13] + 1 > 0 && i7628[13] + 1 < i2[13] && i7628[13] > 0 && i7628[13] < i2[13] && i7630[13] > 0 && i7628[13] + 1 + 1 > 0, java.lang.Object(ARRAY(i2[13], a19203data[13])), i7628[13], i58[13], i7630[13])
(9): LOAD13603ARR3(java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9]) → COND_LOAD13603ARR3(i7628[9] > 0 && i7628[9] < i2[9] && i7630[9] > 0 && i7628[9] + 1 > 0, java.lang.Object(ARRAY(i2[9], a19203data[9])), i7628[9], i58[9], i7630[9])

(17) -> (7), if ((i7630[17]* i7630[7])∧(i7628[17] + 1* i7710[7])∧(i58[17]* i58[7])∧((i2[17]* i2[7])∧(a19203data[17]* a19203data[7])))


(21) -> (7), if (((i2[21]* i2[7])∧(a19203data[21]* a19203data[7]))∧(i7628[21] + 1* i7710[7])∧(i58[21]* i58[7])∧(i7630[21]* i7630[7]))


(22) -> (11), if ((i58[22]* i58[11])∧((i2[22]* i2[11])∧(a19203data[22]* a19203data[11]))∧(i8946[22]* i8902[11])∧(i7630[22]* i7630[11]))


(16) -> (17), if (((i2[16]* i2[17])∧(a19203data[16]* a19203data[17]))∧(i7628[16]* i7628[17])∧(i7630[16]* i7630[17])∧(i58[16]* i58[17])∧(i7628[16] > 0 && i7628[16] < i2[16] && i7630[16] > 0 && i7628[16] + 1 > 0* TRUE))


(7) -> (23), if (((i2[7]* i2[23])∧(a19203data[7]* a19203data[23]))∧(i58[7]* i58[23])∧(i7630[7] + -1* i7630[23])∧(i7710[7]* i7628[23]))


(11) -> (23), if ((i8902[11]* i7628[23])∧(i58[11]* i58[23])∧((i2[11]* i2[23])∧(a19203data[11]* a19203data[23]))∧(i7630[11] + -1* i7630[23]))


(7) -> (29), if ((i58[7]* i58[29])∧((i2[7]* i2[29])∧(a19203data[7]* a19203data[29]))∧(i7630[7] + -1* i7630[29])∧(i7710[7]* i7628[29]))


(11) -> (29), if ((i7630[11] + -1* i7630[29])∧(i8902[11]* i7628[29])∧(i58[11]* i58[29])∧((i2[11]* i2[29])∧(a19203data[11]* a19203data[29])))


(29) -> (30), if (((i2[29]* i2[30])∧(a19203data[29]* a19203data[30]))∧(i7630[29]* i7630[30])∧(i7628[29]* i7628[30])∧(i58[29]* i58[30])∧((i7996[29]* i7996[30])∧(i7860[29]* i7860[30])∧(i7862[29]* i7862[30])∧(a19737[29]* a19737[30])))


(7) -> (32), if ((i58[7]* i58[32])∧((i2[7]* i2[32])∧(a19203data[7]* a19203data[32]))∧(i7710[7]* i7628[32])∧(i7630[7] + -1* i7630[32]))


(11) -> (32), if ((i8902[11]* i7628[32])∧(i58[11]* i58[32])∧((i2[11]* i2[32])∧(a19203data[11]* a19203data[32]))∧(i7630[11] + -1* i7630[32]))



The set Q consists of the following terms:
Load715(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR1(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Cond_Load715ARR1(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR2(java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)))
Cond_Load715ARR2(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)))
Inc15077(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR3(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR3(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Inc18978(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR4(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR4(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR5(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR5(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
JMP15126(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR6(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR6(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
JMP18886(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR7(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR7(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Load13603ARR8(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR8(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR9(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR9(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Load13603ARR10(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR10(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))

(38) IDependencyGraphProof (EQUIVALENT transformation)

The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 13 less nodes.

(39) TRUE

(40) Obligation:

IDP problem:
The following function symbols are pre-defined:
!=~Neq: (Integer, Integer) -> Boolean
*~Mul: (Integer, Integer) -> Integer
>=~Ge: (Integer, Integer) -> Boolean
-1~UnaryMinus: (Integer) -> Integer
|~Bwor: (Integer, Integer) -> Integer
/~Div: (Integer, Integer) -> Integer
=~Eq: (Integer, Integer) -> Boolean
~Bwxor: (Integer, Integer) -> Integer
||~Lor: (Boolean, Boolean) -> Boolean
!~Lnot: (Boolean) -> Boolean
<~Lt: (Integer, Integer) -> Boolean
-~Sub: (Integer, Integer) -> Integer
<=~Le: (Integer, Integer) -> Boolean
>~Gt: (Integer, Integer) -> Boolean
~~Bwnot: (Integer) -> Integer
%~Mod: (Integer, Integer) -> Integer
&~Bwand: (Integer, Integer) -> Integer
+~Add: (Integer, Integer) -> Integer
&&~Land: (Boolean, Boolean) -> Boolean


The following domains are used:

Integer


R is empty.

The integer pair graph contains the following rules and edges:
(22): JMP18886'(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22]) → INC18978(java.lang.Object(ARRAY(i2[22], a19203data[22])), i8946[22], i58[22], i7630[22])
(34): COND_LOAD13603ARR10(TRUE, java.lang.Object(ARRAY(i2[34], a19203data[34])), i7628[34], i58[34], i7630[34], java.lang.Object(java.lang.String(i7996[34], i7860[34], i7862[34], a19737[34]))) → JMP18886'(java.lang.Object(ARRAY(i2[34], a19203data[34])), i7628[34] + 1 + 1, i58[34], i7630[34])
(32): LOAD13603(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32]) → LOAD13603ARR10(java.lang.Object(ARRAY(i2[32], a19203data[32])), i7628[32], i58[32], i7630[32], java.lang.Object(java.lang.String(i7996[32], i7860[32], i7862[32], a19737[32])))
(18): JMP15126'(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18]) → INC15077(java.lang.Object(ARRAY(i2[18], a19203data[18])), i7710[18], i58[18], i7630[18])
(31): COND_LOAD13603ARR9(TRUE, java.lang.Object(ARRAY(i2[31], a19203data[31])), i7628[31], i58[31], i7630[31], java.lang.Object(java.lang.String(i7996[31], i7860[31], i7862[31], a19737[31]))) → JMP15126'(java.lang.Object(ARRAY(i2[31], a19203data[31])), i7628[31] + 1, i58[31], i7630[31])
(29): LOAD13603(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29]) → LOAD13603ARR9(java.lang.Object(ARRAY(i2[29], a19203data[29])), i7628[29], i58[29], i7630[29], java.lang.Object(java.lang.String(i7996[29], i7860[29], i7862[29], a19737[29])))
(28): COND_LOAD13603ARR8(TRUE, java.lang.Object(ARRAY(i2[28], a19203data[28])), i7628[28], i58[28], i7630[28]) → INC18978(java.lang.Object(ARRAY(i2[28], a19203data[28])), i7628[28] + 1 + 1, i58[28], i7630[28])
(26): LOAD13603(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26]) → LOAD13603ARR8(java.lang.Object(ARRAY(i2[26], a19203data[26])), i7628[26], i58[26], i7630[26])
(11): INC18978(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11]) → LOAD13603(java.lang.Object(ARRAY(i2[11], a19203data[11])), i8902[11], i58[11], i7630[11] + -1)
(25): COND_LOAD13603ARR7(TRUE, java.lang.Object(ARRAY(i2[25], a19203data[25])), i7628[25], i58[25], i7630[25], java.lang.Object(java.lang.String(i7996[25], i7860[25], i7862[25], a19737[25]))) → INC18978(java.lang.Object(ARRAY(i2[25], a19203data[25])), i7628[25] + 1 + 1, i58[25], i7630[25])
(23): LOAD13603(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23]) → LOAD13603ARR7(java.lang.Object(ARRAY(i2[23], a19203data[23])), i7628[23], i58[23], i7630[23], java.lang.Object(java.lang.String(i7996[23], i7860[23], i7862[23], a19737[23])))
(21): COND_LOAD13603ARR6(TRUE, java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21], i58[21], i7630[21], java.lang.Object(java.lang.String(i7996[21], i7860[21], i7862[21], a19737[21]))) → INC15077(java.lang.Object(ARRAY(i2[21], a19203data[21])), i7628[21] + 1, i58[21], i7630[21])
(19): LOAD13603(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19]) → LOAD13603ARR6(java.lang.Object(ARRAY(i2[19], a19203data[19])), i7628[19], i58[19], i7630[19], java.lang.Object(java.lang.String(i7996[19], i7860[19], i7862[19], a19737[19])))
(7): INC15077(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7]) → LOAD13603(java.lang.Object(ARRAY(i2[7], a19203data[7])), i7710[7], i58[7], i7630[7] + -1)
(17): COND_LOAD13603ARR5(TRUE, java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17], i58[17], i7630[17]) → INC15077(java.lang.Object(ARRAY(i2[17], a19203data[17])), i7628[17] + 1, i58[17], i7630[17])
(15): LOAD13603(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15]) → LOAD13603ARR5(java.lang.Object(ARRAY(i2[15], a19203data[15])), i7628[15], i58[15], i7630[15])
(14): COND_LOAD13603ARR4(TRUE, java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14], i58[14], i7630[14]) → LOAD13603(java.lang.Object(ARRAY(i2[14], a19203data[14])), i7628[14] + 1 + 1, i58[14], i7630[14] + -1)
(12): LOAD13603(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12]) → LOAD13603ARR4(java.lang.Object(ARRAY(i2[12], a19203data[12])), i7628[12], i58[12], i7630[12])
(10): COND_LOAD13603ARR3(TRUE, java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10], i58[10], i7630[10]) → LOAD13603(java.lang.Object(ARRAY(i2[10], a19203data[10])), i7628[10] + 1, i58[10], i7630[10] + -1)
(8): LOAD13603(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8]) → LOAD13603ARR3(java.lang.Object(ARRAY(i2[8], a19203data[8])), i7628[8], i58[8], i7630[8])

(17) -> (7), if ((i7630[17]* i7630[7])∧(i7628[17] + 1* i7710[7])∧(i58[17]* i58[7])∧((i2[17]* i2[7])∧(a19203data[17]* a19203data[7])))


(18) -> (7), if ((i7710[18]* i7710[7])∧((i2[18]* i2[7])∧(a19203data[18]* a19203data[7]))∧(i58[18]* i58[7])∧(i7630[18]* i7630[7]))


(21) -> (7), if (((i2[21]* i2[7])∧(a19203data[21]* a19203data[7]))∧(i7628[21] + 1* i7710[7])∧(i58[21]* i58[7])∧(i7630[21]* i7630[7]))


(7) -> (8), if ((i58[7]* i58[8])∧(i7630[7] + -1* i7630[8])∧((i2[7]* i2[8])∧(a19203data[7]* a19203data[8]))∧(i7710[7]* i7628[8]))


(10) -> (8), if ((i7630[10] + -1* i7630[8])∧((i2[10]* i2[8])∧(a19203data[10]* a19203data[8]))∧(i58[10]* i58[8])∧(i7628[10] + 1* i7628[8]))


(11) -> (8), if ((i8902[11]* i7628[8])∧((i2[11]* i2[8])∧(a19203data[11]* a19203data[8]))∧(i7630[11] + -1* i7630[8])∧(i58[11]* i58[8]))


(14) -> (8), if ((i7630[14] + -1* i7630[8])∧(i7628[14] + 1 + 1* i7628[8])∧((i2[14]* i2[8])∧(a19203data[14]* a19203data[8]))∧(i58[14]* i58[8]))


(22) -> (11), if ((i58[22]* i58[11])∧((i2[22]* i2[11])∧(a19203data[22]* a19203data[11]))∧(i8946[22]* i8902[11])∧(i7630[22]* i7630[11]))


(25) -> (11), if ((i7630[25]* i7630[11])∧((i2[25]* i2[11])∧(a19203data[25]* a19203data[11]))∧(i7628[25] + 1 + 1* i8902[11])∧(i58[25]* i58[11]))


(28) -> (11), if ((i58[28]* i58[11])∧(i7628[28] + 1 + 1* i8902[11])∧((i2[28]* i2[11])∧(a19203data[28]* a19203data[11]))∧(i7630[28]* i7630[11]))


(7) -> (12), if ((i7710[7]* i7628[12])∧(i58[7]* i58[12])∧((i2[7]* i2[12])∧(a19203data[7]* a19203data[12]))∧(i7630[7] + -1* i7630[12]))


(10) -> (12), if ((i58[10]* i58[12])∧((i2[10]* i2[12])∧(a19203data[10]* a19203data[12]))∧(i7630[10] + -1* i7630[12])∧(i7628[10] + 1* i7628[12]))


(11) -> (12), if ((i58[11]* i58[12])∧(i8902[11]* i7628[12])∧(i7630[11] + -1* i7630[12])∧((i2[11]* i2[12])∧(a19203data[11]* a19203data[12])))


(14) -> (12), if ((i7630[14] + -1* i7630[12])∧((i2[14]* i2[12])∧(a19203data[14]* a19203data[12]))∧(i7628[14] + 1 + 1* i7628[12])∧(i58[14]* i58[12]))


(7) -> (15), if ((i7710[7]* i7628[15])∧((i2[7]* i2[15])∧(a19203data[7]* a19203data[15]))∧(i7630[7] + -1* i7630[15])∧(i58[7]* i58[15]))


(10) -> (15), if (((i2[10]* i2[15])∧(a19203data[10]* a19203data[15]))∧(i7630[10] + -1* i7630[15])∧(i7628[10] + 1* i7628[15])∧(i58[10]* i58[15]))


(11) -> (15), if ((i8902[11]* i7628[15])∧(i7630[11] + -1* i7630[15])∧((i2[11]* i2[15])∧(a19203data[11]* a19203data[15]))∧(i58[11]* i58[15]))


(14) -> (15), if ((i58[14]* i58[15])∧(i7628[14] + 1 + 1* i7628[15])∧((i2[14]* i2[15])∧(a19203data[14]* a19203data[15]))∧(i7630[14] + -1* i7630[15]))


(31) -> (18), if ((i58[31]* i58[18])∧((i2[31]* i2[18])∧(a19203data[31]* a19203data[18]))∧(i7630[31]* i7630[18])∧(i7628[31] + 1* i7710[18]))


(7) -> (19), if ((i58[7]* i58[19])∧(i7710[7]* i7628[19])∧((i2[7]* i2[19])∧(a19203data[7]* a19203data[19]))∧(i7630[7] + -1* i7630[19]))


(10) -> (19), if ((i58[10]* i58[19])∧((i2[10]* i2[19])∧(a19203data[10]* a19203data[19]))∧(i7630[10] + -1* i7630[19])∧(i7628[10] + 1* i7628[19]))


(11) -> (19), if ((i8902[11]* i7628[19])∧((i2[11]* i2[19])∧(a19203data[11]* a19203data[19]))∧(i7630[11] + -1* i7630[19])∧(i58[11]* i58[19]))


(14) -> (19), if ((i7628[14] + 1 + 1* i7628[19])∧((i2[14]* i2[19])∧(a19203data[14]* a19203data[19]))∧(i7630[14] + -1* i7630[19])∧(i58[14]* i58[19]))


(34) -> (22), if ((i7630[34]* i7630[22])∧(i7628[34] + 1 + 1* i8946[22])∧(i58[34]* i58[22])∧((i2[34]* i2[22])∧(a19203data[34]* a19203data[22])))


(7) -> (23), if (((i2[7]* i2[23])∧(a19203data[7]* a19203data[23]))∧(i58[7]* i58[23])∧(i7630[7] + -1* i7630[23])∧(i7710[7]* i7628[23]))


(10) -> (23), if ((i7630[10] + -1* i7630[23])∧(i58[10]* i58[23])∧((i2[10]* i2[23])∧(a19203data[10]* a19203data[23]))∧(i7628[10] + 1* i7628[23]))


(11) -> (23), if ((i8902[11]* i7628[23])∧(i58[11]* i58[23])∧((i2[11]* i2[23])∧(a19203data[11]* a19203data[23]))∧(i7630[11] + -1* i7630[23]))


(14) -> (23), if (((i2[14]* i2[23])∧(a19203data[14]* a19203data[23]))∧(i7628[14] + 1 + 1* i7628[23])∧(i7630[14] + -1* i7630[23])∧(i58[14]* i58[23]))


(7) -> (26), if ((i7710[7]* i7628[26])∧(i58[7]* i58[26])∧((i2[7]* i2[26])∧(a19203data[7]* a19203data[26]))∧(i7630[7] + -1* i7630[26]))


(10) -> (26), if (((i2[10]* i2[26])∧(a19203data[10]* a19203data[26]))∧(i7628[10] + 1* i7628[26])∧(i7630[10] + -1* i7630[26])∧(i58[10]* i58[26]))


(11) -> (26), if ((i58[11]* i58[26])∧((i2[11]* i2[26])∧(a19203data[11]* a19203data[26]))∧(i8902[11]* i7628[26])∧(i7630[11] + -1* i7630[26]))


(14) -> (26), if ((i58[14]* i58[26])∧(i7628[14] + 1 + 1* i7628[26])∧((i2[14]* i2[26])∧(a19203data[14]* a19203data[26]))∧(i7630[14] + -1* i7630[26]))


(7) -> (29), if ((i58[7]* i58[29])∧((i2[7]* i2[29])∧(a19203data[7]* a19203data[29]))∧(i7630[7] + -1* i7630[29])∧(i7710[7]* i7628[29]))


(10) -> (29), if ((i7630[10] + -1* i7630[29])∧((i2[10]* i2[29])∧(a19203data[10]* a19203data[29]))∧(i7628[10] + 1* i7628[29])∧(i58[10]* i58[29]))


(11) -> (29), if ((i7630[11] + -1* i7630[29])∧(i8902[11]* i7628[29])∧(i58[11]* i58[29])∧((i2[11]* i2[29])∧(a19203data[11]* a19203data[29])))


(14) -> (29), if ((i7630[14] + -1* i7630[29])∧((i2[14]* i2[29])∧(a19203data[14]* a19203data[29]))∧(i58[14]* i58[29])∧(i7628[14] + 1 + 1* i7628[29]))


(7) -> (32), if ((i58[7]* i58[32])∧((i2[7]* i2[32])∧(a19203data[7]* a19203data[32]))∧(i7710[7]* i7628[32])∧(i7630[7] + -1* i7630[32]))


(10) -> (32), if ((i7630[10] + -1* i7630[32])∧(i58[10]* i58[32])∧((i2[10]* i2[32])∧(a19203data[10]* a19203data[32]))∧(i7628[10] + 1* i7628[32]))


(11) -> (32), if ((i8902[11]* i7628[32])∧(i58[11]* i58[32])∧((i2[11]* i2[32])∧(a19203data[11]* a19203data[32]))∧(i7630[11] + -1* i7630[32]))


(14) -> (32), if (((i2[14]* i2[32])∧(a19203data[14]* a19203data[32]))∧(i58[14]* i58[32])∧(i7630[14] + -1* i7630[32])∧(i7628[14] + 1 + 1* i7628[32]))



The set Q consists of the following terms:
Load715(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR1(java.lang.Object(ARRAY(x0, x1)), x2, x3)
Cond_Load715ARR1(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3)
Load715ARR2(java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)))
Cond_Load715ARR2(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, java.lang.Object(java.lang.String(x4, x5, x6, x7)))
Inc15077(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR3(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR3(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Inc18978(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR4(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR4(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR5(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR5(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
JMP15126(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR6(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR6(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
JMP18886(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR7(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR7(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Load13603ARR8(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Cond_Load13603ARR8(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4)
Load13603ARR9(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR9(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Load13603ARR10(java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))
Cond_Load13603ARR10(TRUE, java.lang.Object(ARRAY(x0, x1)), x2, x3, x4, java.lang.Object(java.lang.String(x5, x6, x7, x8)))

(41) IDependencyGraphProof (EQUIVALENT transformation)

The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 20 less nodes.

(42) TRUE